天天看點

自學 Python 之清單(list)

微信公衆号:一個優秀的廢人

如有問題或建議,請公衆号留言

自學 Python 之清單(list)

前言

我是狗哥,一名程式猿。做過 Android、撸過 Java、目前在自學 Python 。注冊 「一個優秀的廢人」這個公号已有些日子,真正有心将它營運起來是這兩天萌生的想法。注冊這個号的初衷是分享我的 Python 學習筆記。一個知識,你自己懂,不算是真的懂,你能把他人說懂,才是真正掌握。分享,是一個最好的複習過程。

Python 清單

序列是 Python 中最基本的資料結構。序列中的每個元素都配置設定一個數字 - 它的位置,或索引,第一個索引是 0,第二個索引是 1,依此類推(類似于 Java 中的數組)。

Python 有 6 個序列的内置類型,但最常見的是清單和元組(下一篇,請期待)。

序列都可以進行的操作包括索引,切片,加,乘,檢查成員。

此外,Python 已經内置确定序列的長度以及确定最大和最小的元素的方法。

清單是最常用的 Python 資料類型,它可以作為一個方括号内的逗号分隔值出現。

清單的資料項不需要具有相同的類型

建立一個清單,隻要把逗号分隔的不同的資料項使用方括号括起來即可。如下所示:

list1 = ['Google', 'Runoob', , ];
list2 = [, , , ,  ];
list3 = ["a", "b", "c", "d"];
           

與字元串的索引一樣,清單索引從 0 開始。清單可以進行截取、組合等。

通路清單中的值

使用下标索引來通路清單中的值,同樣你也可以使用方括号的形式截取字元,如下所示:

list1 = ['Google', 'Nasus', , ];
list2 = [, , , , , ,  ];

print ("list1[0]: ", list1[])
print ("list2[1:5]: ", list2[:])
           

以上執行個體輸出結果:

list1[0]:  Google
list2[1:5]:  [2, 3, 4, 5]
           

更新清單

你可以對清單的資料項進行修改或更新,你也可以使用 append() 方法來添加清單項,如下所示:

list = ['Google', 'Runoob', , ]

print ("第三個元素為 : ", list[])
list[] = 
print ("更新後的第三個元素為 : ", list[])
           

注意:我們會在接下來的章節讨論 append() 方法的使用

以上執行個體輸出結果:

第三個元素為 :  1997
更新後的第三個元素為 :  2001
           

删除清單元素

可以使用 del 語句來删除清單的的元素,如下執行個體:

list = ['Google', 'Nasus', , ]

print (list)
del list[]
print ("删除第三個元素 : ", list)
           

以上執行個體輸出結果:

删除第三個元素 : ['Google', 'Nasus', ]
           

注意:我們會在接下來的章節讨論 remove() 方法的使用

Python 清單腳本操作符

清單對 + 和 * 的操作符與字元串相似。+ 号用于組合清單,* 号用于重複清單。

如下所示:

Python 表達式 結果 描述
len([1, 2, 3]) 3 長度
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 組合
[‘Hi!’] * 4 [‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’] 重複
3 in [1, 2, 3] True 元素是否存在于清單中
for x in [1, 2, 3]: print(x, end=” “) 1 2 3 疊代

Python 清單截取與拼接

Python 的清單截取與字元串操作類型,如下所示:

L=['Tencent', 'Xiaomi', 'Taobao']
           

操作:

Python 表達式 結果 描述
L[2] ‘Taobao’ 讀取第三個元素
L[-2] ‘Nasus’ 從右側開始讀取倒數第二個元素: count from the right
L[1:] [‘Nasus’, ‘Taobao’] 輸出從第二個元素開始後的所有元素
>>>L=['Tencent', 'Nasus', 'Taobao']
>>> L[]
'Taobao'
>>> L[-]
'Nasus'
>>> L[:]
['Nasus', 'Taobao']
>>>
           

清單還支援拼接操作:

>>>squares = [1, 4, 9, 16, 25]
>>> squares + [36, 49, 64, 81, 100]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
           

嵌套清單

使用嵌套清單即在清單裡建立其它清單,例如:

>>>a = ['a', 'b', 'c']
>>> n = [, , ]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[]
['a', 'b', 'c']
>>> x[][]
'b'
           

Python 清單函數&方法

Python 包含以下函數:

序号 函數
1 len(list) 清單元素個數
2 max(list) 傳回清單元素最大值
3 min(list) 傳回清單元素最小值
4 list(seq) 将元組轉換為清單

Python 包含以下方法用于操作清單:

序号 方法
1 list.append(obj) 在清單末尾添加新的對象
2 list.count(obj) 統計某個元素在清單中出現的次數
3 list.extend(seq) 在清單末尾一次性追加另一個序列中的多個值(用新清單擴充原來的清單)
4 list.index(obj) 從清單中找出某個值第一個比對項的索引位置
5 list.insert(index, obj) 将對象插入清單
6 list.pop([index=-1] 移除清單中的一個元素(預設最後一個元素),并且傳回該元素的值
7 list.remove(obj) 移除清單中某個值的第一個比對項
8 list.reverse() 反向清單中元素
9 list.sort(cmp=None, key=None, reverse=False) 對原清單進行排序
10 list.clear() 清空清單
11 list.copy() 複制清單

後語

本文章關于 list 的介紹就到這裡,按照慣例送上思維導圖幫助你們了解并記憶,但最重要的還是多動手自己實踐,雖然看上去很簡單,但是你自己敲一遍可能會出現各種各樣的問題。學習,千萬不能有所見即所得的想法,實踐才是檢驗真理的唯一标準。

自學 Python 之清單(list)

下節内容:「自學 Python 之元組(tuple)」 有興趣的朋友可以長按下方二維碼關注我的公衆号(不關注我就坐地上不起來,哼!)。

自學 Python 之清單(list)