上節講到列表的基本用法,這節具體講下操作列表的函式用法。
1.新增元素
>>>x = [1,2,3]
>>>id(x) #檢視物件的記憶體位址
50159368
>>>x
[1,2,3,4]
>>>x.insert(2,0) #在指定位置插入元素,前乙個引數是位置
>>>x
[1,2,0,3,4]
>>>x.extend([5,6,7]) #在尾部追加多個元素
>>>x
[1,2,0,3,4,5,6,7]
>>>id(x) #列表在記憶體中的位址不變
50159368
#另外用 + 和 * 也可以向列表中新增元素,不過返回的是新列表,id發生改變
>>>x = [1,2,3]
>>>id(x)
50231246
>>>x = x+[4]
>>>x
[1,2,3,4]
>>>x = x * 2
>>>x
[1,2,3,4,1,2,3,4]
>>>id(x)
50221243
2.下面說說三種刪除元素的方法
>>>x = [1,2,3,4,5,6,7]
>>>x.pop() #取出並返回最後乙個元素
7>>>x.pop(0) #取出並返回第乙個元素
>>>x
1>>>x.clear() #刪除所有元素
>>>x
>>>x = [1,2,1,1,2]
>>>x.remove(2) #刪除首個值為 2 的元素
>>>x
[1,1,1,2]
>>>del x[3] #刪除指定位置的元素
>>>x
[1,1,1]
注:在列表中間位置插入或刪除元素會影響後面所有元素的下標,要盡力避免在列表中間位置進行插入和刪除操作。
3.count()、index()函式
列表方法count()用於返回列表中指定元素出現的次數,index()用於返回指定元素在列表中首次出現的位置,如果該元素不在則丟擲異常。
>>>x = [1,2,2,3,3,3,4,4,4,4]
>>>x.count(3) #列表中元素3的個數
3>>>x.index(2) #元素2在列表中首次出現的位置(索引)
1>>>x.index(4)
6>>>5 in x #判斷元素 5 是否在列表 x 中
false
4.sort()、reverse() 和sorted()、reversed()
sort()和reverse()對列表進行的排序是原地排序,就是所排序後的列表代替的原列表。
>>>x = list(range(11))
>>>import random
>>>random.shuffle(x) #隨機亂序
>>>x
[0,8,4,2,3,7,9,5,1,6,10]
>>>x.reverse() #逆序
>>>x
[10,6,1,5,9,7,3,2,4,8,0]
>>>x.sort() #順序
>>>x
[0,1,2,3,4,5,6,7,8,9,10]
>>>x.sort(key=str) #轉換成字串後的大小排序
>>>x
[0,1,10,2,3,4,5,6,7,8,9]
而sorted()和reversed()這兩個函式會得到新列表而不會對原列表做任何修改
>>>import random
>>>x = list(range(11))
>>>random.shuffle(x)
>>>x
[6, 2, 0, 1, 7, 9, 4, 3, 5, 10, 8]
>>>sorted(x,key=str)
[0,1,10,2,3,4,5,6,7,8,9]
>>>list(reversed(x))
[9,8,7,6,5,4,3,2,10,1,0]
>>>x #原列表 x 沒有改變
[6, 2, 0, 1, 7, 9, 4, 3, 5, 10, 8]
python基礎之列表基礎
name list 夏 商 周 秦 漢 三國 num list 100,148,186,160,173,184 zip函式將迭代器封裝成生成器,平行遍歷 for rust,ru in zip name list,num list print 國家是 s 年代是 d rust,ru for ru in...
Python基礎練習之列表
1.使用列表儲存n個整數 n從鍵盤輸入 計算平均值並輸出lst n eval input 輸入n for in range n eval input sum lst len lst 輸入n 312 32.0 2.使用列表儲存n個整數 n從鍵盤輸入 對這些數降序排列並輸出lst n eval inpu...
python基礎之列表元組
1 整數 int 2 浮點數 float 3 字串 string 4 布林型 boolean 1 列表特點 1 存放任意資料型別 2 屬於可變物件,值可以修改 列表演示 testlist1 10 20,30 40,50 testlist2 a b c testlist3 a 33 10,20 1,2...