python3 列表函式
以下講解幾個常用操作列表的函式
Python中列表是可變的,這是它區別於字串和元組的最重要的特點,一句話概括即:列表可以修改,而字串和元組不能。
以下是 Python 中列表的方法
列表函式 | 含義 |
---|---|
list.append(x) | 把一個元素新增到列表的結尾,相當於 a[len(a):] = [x]。 |
list.extend(L) | 通過新增指定列表的所有元素來擴充列表,相當於 a[len(a):] = L。 |
list.insert(i, x) | 在指定位置插入一個元素。第一個引數是準備插入到其前面的那個元素的索引。 |
list.remove(x) | 刪除列表中值為 x 的第一個元素。如果沒有這樣的元素,就會返回一個錯誤。 |
list.pop([i]) | 從列表的指定位置移除元素,並將其返回。如果沒有指定索引,a.pop()返回最後一個元素。元素隨即從列表中被移除。 |
list.clear() | 移除列表中的所有項,等於del a[:]。 |
list.index(x) | 返回列表中第一個值為 x 的元素的索引。如果沒有匹配的元素就會返回一個錯誤。 |
list.count(x) | 返回 x 在列表中出現的次數。 |
list.sort() | 對列表中的元素進行排序。 |
list.reverse() | 倒排列表中的元素。 |
list.copy() | 返回列表的淺複製,等於a[:]。 |
根據列表中函式的用法,以下舉例說明
list.append()
>>> dpc = [1,2,3]
>>> dpc.append(4)
>>> print (dpc)
[1, 2, 3, 4]
list.extend()
>>> dpc = [1,2,3]
>>> a = ['a','b','c']
>>> dpc.extend(a)
>>> print (dpc)
[1, 2, 3, 'a', 'b', 'c']
list.insert()
>>> dpc = [1,2,3]
>>> dpc.insert(0,0)
>>> print (dpc)
[0, 1, 2, 3]
list.remove()
>>> dpc = [1,2,3]
>>> dpc.remove(1)
>>> print (dpc)
[2, 3]#如果刪除列表中不純在的值會報錯
>>> dpc.remove(4)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list
list.pop()
>>> dpc = [1,2,3]
>>> dpc.pop(1)
2
>>> print (dpc)
[1, 3]#如果不指定列表中的索引值,會返回列表最後一個元素
>>> dpc.pop()
3
>>> print (dpc)
[1]
list.clear()
>>> dpc = [1,2,3]
>>> dpc.clear()
>>> print (dpc)
[]
list.index()
>>> dpc = [1,2,3]
>>> dpc.index(2)
1#如果沒有匹配的元素就會返回一個錯誤
>>> dpc.index(4)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: 4 is not in list
list.count()
>>> dpc = [1,1,2,2,2]
>>> print ('數值1的個數 {0}\n數值2的個數 {1}'.format(dpc.count(1),dpc.count(2)))
數值1的個數 2
數值2的個數 3
list.sort()
>>> dpc = [3,2,1]
>>> dpc.sort()
>>> print (dpc)
[1, 2, 3]#如果列表中的存在字串型別就會報錯
>>> dpc = ['3',2,1]
>>> dpc.sort()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'int' and 'str'
list.reverse()
>>> dpc = [1,2,3]
>>> dpc.reverse()
>>> print (dpc)
[3, 2, 1]#list.reverse同樣也不支援字元中排序,如果有字串會返回錯誤
list.copy()
>>> dpc = [1,2,3]
>>> dpc.copy()
[1, 2, 3]