Python中列表與元組

2021-08-16 11:13:02 字數 3439 閱讀 4945

本文將總結python中關於列表和元組的一些常用函式與方法。

一、列表的基本操作

python使用使用中括號[ ]來解析列表。列表是可變的(mutable),即列表的內容是可以改變的。列表可以使用所有適用於序列的標準操作,例如索引、分片、連線和乘法。

1. list() 函式

list() 函式可以把乙個序列型別轉換成乙個列表。list()函式可以作用於所有型別的序列(而不只是字串)。

list(『hello』)      >>> [『h』, 『e』, 『l』, 『l』, 『o』]

2. 改變列表:元素賦值

可以使用索引值來為某個特定的、位置明確的元素賦值。但不能為某個位置不存在的元素進行賦值。

x = [1, 1, 1]

x[1] = 2

print(x)      >>> [1, 2, 1]

3. 刪除元素

從列表中刪除元素也很容易:使用 del 語句來實現。

names = [『alice』, 『beth』, 『cecil』, 『dee-dee』, 『earl』]

del names[2]   # 除了刪除列表中的元素,del 語句還能用於刪除其他元素。

print(names)      >>> [『alice』, 『beth』, 『dee-dee』, 『earl』]

4. 切片賦值

name = list(『kobe』)

print(name)      >>> [『k』, 『o』, 『b』, 『e』]

name[2:] = list(『cd』)

print(name)      >>> [『k』, 『o』, 『c』, 『d』]

在使用切片賦值操作時,可以使用與原序列不等長的序列將分片替換:

name = list(『perl』)

name[1:] = list(『ython』)

print(name)        >>> [『p』, 『y』, 『t』, 『h』, 『o』, 『n』]

切片賦值還可以在不替換任何原有元素的情況下,為列表插入新的元素。

numbers = [1, 5]

numbers[1:1] = [2, 3, 4]

print(numbers)    >>> [1, 2, 3, 4, 5]

通過列表切片還可以用來刪除元素。

numbers = [1, 2, 3, 4, 5]

numbers[1:4] = 

print(numbers)    >>> [1, 5]

二、列表方法(物件.方法(引數))

list1 = [1, 2, 3]

print(list)        >>> [1, 2, 3, 4]

2. count():用於統計某個元素在列表中出現的次數。

list2 = [『to』, 『be』, 『or』, 『not』, 『to』, 『be』]

print(list2.count(『to』))       >>> 2

x = [[1,2], 1, 1, [2, 1, [1, 2]]]

print(x.count(1))             >>> 2

3. extend():用於在列表的末尾新增另乙個序列。

a = [1, 2, 3]

b = [4, 5, 6]

print(a.extend(b))      >>> [1, 2, 3, 4, 5, 6]

extend()會修改被擴充套件的列表,而原始的連線操作(+)則不會,它將返回乙個全新的列表。

print(a)      >>> [1, 2, 3, 4, 5, 6]

print(a + b)     >>> [1, 2, 3, 4, 5, 6]

print(a)      >>> [1, 2, 3]

4. index():用於從列表中找出某個值第乙個匹配項的索引位置。當搜尋不存在的值時,程式就會引發乙個異常。

knights = [『we』, 『are』, 『the』, 『knights』, 『who』, 『say』, 『ni』]

print(knights.index(『who』)     >>> 4

5. insert():用於將物件插入到列表中的相應的位置。

numbers = [1, 2, 3, 5, 6, 7]

numbers.insert(3, 『four』)

print(numbers)       >>>[1, 2, 3, 『four』, 5, 6, 7]

6. pop():用於移除列表中的乙個元素(預設是最後乙個),並且返回該元素的值。pop方法是唯一乙個即能修改列表又返回元素值(除了none)的列表方法。

x = [1, 2, 3]

x.pop()       >>> 3

print(x)       >>> [1, 2]

x.pop(0)      >>> 1

7. remove():用於移除列表中某個值的第乙個匹配項。只有第一次出現的值被移除,而不存在與列表中的值是不會移除的。remove()是乙個沒有返回值卻能改變原位置的方法,它修改了列表卻沒有返回值。

x = [『to』, 『be』, 『or』, 『not』, 『to』, 『be』]

x.remove(『be』)

print(x)      >>> [『to』, 『or』, 『not』, 『to』, 『be』]

8. reverse():將列表中的元素反向倒序。

x = [1, 2, 3]

x.reverse() 

print(x)      >>> [3, 2, 1]

9. sort():用於在原位置對列表進行排序。

x = [4, 6, 2, 1, 7, 9]

x.sort() 

print(x)      >>> [1, 2, 4, 6, 7, 9]

三、元組

(不可變序列)

建立元組的語法很簡單:如果你用逗號分隔了一些值(1, 2, 3),那麼你就自動建立了元組。

實現包括單值的元組,必須加個逗號:(42,)

tuple函式的功能與list函式基本上是一樣的:以乙個序列作為引數並把它轉化為元組。

tuple([1, 2, 3])     >>> (1, 2, 3)

唯一不同的就是元組是不可改變的,不可刪除其中的元素。除了建立元組和訪問元組元組之外,也沒有太多其他操作,可以參考其他型別的序列來實現。元組的意義在於它可以在對映(和集合的成員)中當作鍵使用,而列表則不行;元組作為很多內建函式和方法的返回值存在。

python中列表與元組

pop 移除指定索引的一項 insert 指定索引位置前插入一項 remove 按照值移除元素 sort 排序 reverse 對列表進行反轉 index 獲取索引 del 刪除 列表中還可以巢狀列表 列表的解析操縱 one line表示式 a 1,2 x,y a x 1,y 2 d d.keys ...

python中的列表與元組

python當中沒有陣列這個概念,但是有比陣列更為強大且功能齊全的列表。建立列表 建立列表和建立普通變數一樣,用中括號括起來一堆資料就可以了,資料之間用逗號隔開,這樣乙個普普通通的列表就建立成功了 列表裡可以有整型 字串 浮點型,甚至列表裡面包含另乙個列表,如果實在想不到往列表裡面塞什麼資料的時候,...

PYTHON 列表與元組

列表簡介 是一種內建的資料結構,用來儲存一系列的元素 同js一樣,由於解釋性語言不必宣告資料型別,所以陣列的元素也可以很靈或的不相同。列表的運算 index索引運算 切片運算 拼接運算 重複運算 成員運算in 長度運算len 迴圈for 列表方法 list.intex 可以返回任意的方法 my li...