1. 程式人生 > 實用技巧 >python list列表的常見操作方法

python list列表的常見操作方法

Python list列表的常用操作方法

本文主要介紹了Python中列表(List)的詳解操作方法,包含建立、訪問、刪除、排序、切片,乘等操作方法

1.建立列表:把逗號分隔的不同的資料項使用方括號括起來

list = [1,2,3,'James','Paul']
list1= [i for i in range(10)]
print(list)
print(list1)

[1, 2, 3, 'James', 'Paul']
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

2.新增元素:

list.append() :尾部新增元素

list = [1,2,3]
list.append(
5) print(list) [1, 2, 3, 5] list.insert():插入元素 list.insert(index, object) 引數一:index 位置, 引數二:object >>> list = [1,2,3,5] >>> list.insert(3,4) >>> list [1, 2, 3, 4, 5] list.extend():擴充套件列表 list.extend(tablelist),左右與 + 類似 >>> list1 = [1,2,3] >>> list2 = ['
a','b'] >>> list1.extend(list2) >>> list1 [1, 2, 3, 'a', 'b'] + 號用於組合列表, list1+list2 >>> L1 = [1,2,3] >>> L2 = ['a', 'b'] >>> L1+L2 [1, 2, 3, 'a', 'b'] * 號用於重複列表 >>> L1 = [1,2,3] >>> L1*3 [1, 2, 3, 1, 2, 3, 1, 2, 3]

3.訪問列表元素

>>> a = ['
a',5,'z'] >>> a[2] 'z' 元素重新賦值:= >>>a[2] = 'LL' >>>a ['a',5,‘LL’]

4.順序遍歷,迭代:

for迴圈

>>> list = [1,2,3,4,5]
>>> for i in list:
print(i)


使用for迴圈和enumerate()函式實現,同時輸出索引值和元素內容:

list = ['中國', '美國', '英國', '俄羅斯']
for index, item in enumerate(list):
print(index+1, item)

1 中國
2 美國
3 英國
4 俄羅斯

5.刪除元素:

list.remove(object):引數object 如有重複元素,只會刪除最靠前的
>>> list = [1,2,'a','b','a']
>>> list.remove('a')
>>> list
[1, 2, 'b', 'a']       # 第一個‘a’被刪除,後面的未被移除


ist.pop(index): 預設為刪除最後一個元素,index -- 可選引數,要移除列表元素的對應索引值,
>>> list = [1,2,3,4,5]
>>> list.pop()       # 預設刪除最後一個元素
5
>>> list
[1, 2, 3, 4]
>>> list.pop(1)       # 刪除指定索引(index=1)的元素
2
>>> list
[1, 3, 4]


del list[index] :可以刪除整個列表或指定元素或者列表切片,list刪除後無法訪問。

>>> list
[1, 3, 4]
>>> del list[1]
>>> list
[1, 4]
>>> del list
>>> list
<class 'list'>

6.排序和反轉:

list.reverse() :列表元素反轉

>>> list = [1,2,3,4,5]
>>> list.reverse()
>>> list [5, 4, 3, 2, 1]


list.sort():排序,sort有三個預設引數 cmp=None,key=None,reverse=False 因此可以制定排序引數
>>> a = [1,2,5,6,3]
>>> a.sort()
>>> a
[1, 2, 3, 5, 6]
python3X中,不能將數字和字元一起排序,會出現此報錯
>>> a = [5,1,'z','h']
>>> a.sort()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'str' and 'int'


reverse=False,升序排序(預設);

reverse=True,降序排序
>>> a = [1,5,9,10,3]
>>> a.sort()
>>> a
[1, 3, 5, 9, 10]
>>> a.sort(reverse=True)
>>> a
[10, 9, 5, 3, 1]


sorted():sorted(list) 

>>> A = [1,8,2,5]
>>> sorted(A)
[1, 2, 5, 8]
>>> sorted(A,reverse=True)
[8, 5, 2, 1]
>>> A
[1, 8, 2, 5]
>>>

注:sorted()函式與sort()方法有一點不同,sort()會在原list的上重新排列並儲存,而sorted()不會改變原列表的順序,只是生成新的排序列表
View Code

7.列表切片:

列表的位置,或索引,第一個索引是0,第二個索引是1,反向從-1開始
L = ['spam', 'Spam',  'SPAM!', 'Sam', 'Paul','Kate']

操作:

Python表示式    結果                          描述

L[2]               'SPAM!'                     讀取列表中第三個元素

L[-2]              'Paul'                         讀取列表中倒數第二個元素

L[1:]              ['Spam',  'SPAM!', 'Sam', 'Paul','Kate']      從第二個元素開始擷取列表

L[1:4:2]         ['Spam', 'Sam']          從第二個元素開始到底到第五個元素,每兩個元素選取一個

 
View Code

8.列表操作常用函式和方法

列表操作包含以下函式:

  cmp(list1, list2):比較兩個列表的元素 (python3已丟棄)

  len(list):列表中元素個數

  max(list):返回列表元素最大值

  min(list):返回列表元素最小值

  list(seq):將元組轉換為列表

  tuple(seq):將列表轉換為元祖

  sorted(list):排序列表元素順序



列表操作常用操作包含以下方法:

  list.append(obj):在列表末尾新增新的物件

  list.count(obj):統計某個元素在列表中出現的次數

  list.extend(seq):在列表末尾一次性追加另一個序列中的多個值(用新列表擴充套件原來的列表)

  list.index(obj):從列表中找出某個值第一個匹配項的索引位置

  list.insert(index, obj):將物件插入列表

  list.pop(obj=list[-1]):移除列表中的一個元素(預設最後一個元素),並且返回該元素的值

  list.remove(obj):移除列表中某個值的第一個匹配項

  list.reverse():反向列表中元素

  list.sort([func]):對原列表進行排序

  list.clear():  清空列表  (python3.0)
View Code