基本資料型別之列表
------------恢復內容開始------------
一、定義:形如:A=['資料1,'資料2','資料3',... ' ],即:在[ ]內用逗號分隔開的多個任意資料型別的值,且可以重複。
1 list=['marsha','你好',[1,2,3],49] 2 print(list) 3 >>> 4 ['marsha','你好',[1,2,3],49]
二、資料型別轉換: 列表是可變資料型別,但凡能被for迴圈遍歷的資料型別都可以傳給list( )轉換成列表型別,list( )會跟for迴圈一樣遍歷出資料型別中包含的每一個元素然後放到列表中。
1 name='marsha' 2 age=49 3 msg={'name':'marsha','age':49} 4 res=[1,2,3] 5 m=(1,2,3,4) 6 n={1,2,3,4,5} 7 print(name) 8 print(age) 9 print(res) 10 print(m) 11 print(n) 12 #輸入結果 13 ['m','a','r','s','h','a'] 14 [4,9] 15 ['name','age'] #遍歷k 16 [1,2,3] 17 [1,2,3,4] 18 [1,2,3,4,5]
三、內建方法
A、按索引存取值:對於list來說,即可以按照索引取值,又可以按照索引修改指定位置的值,但如果索引不存在就會報錯。正向取值是從左到右,從0開始數,反向取是從右向左,從-1開始數。
1 msg=['name','age','marsha','titi',4] 2 msg[2]='marrey' 3 print(msg[0] 4 print(msg) 5 >>> 6 'name' 7 ['name','age','marrey','titi',4]
B、切片slice:是一種淺拷貝行為,從list中按照[start:end;step]語法格式取值,切片索引方向由step的正負決定,方法如str,顧頭不顧尾。
1 res=[0,1,2,3,4,5,6,7] 2 print(res[0:5:2] 3 >>> 4 [0,2,4]
C、長度len:計算list中,由逗號分隔開的元素的個數,從1開始數。
msg=['marsha','titi',49,'max'] print(len[msg]) >>> 4
D、成員運算 in 和 not in
1 msg=['name','age','titi',49] 2 print('age' in msg) 3 >>> 4 True
E、新增操作:
在列表尾部追加元素用:append( ) #先進先新增
在列表尾部一次性新增多個元素用:extend( )
在列表指定位置插入元素用:insert( ) #按索引位置插入,可以中間或任意位置
1 L=['a','b','c'] 2 L.append('d') 3 L.append('e')) 4 print(L) 5 >>> 6 ['a','b','c','d','e'] 7 8 M=['a','b','c','d'] 9 N=M.extend(['h','i','j'] 10 H=N.insert(1,'m')) 11 print(N) 12 Print(H) 13 >>> 14 ['a','b','c','d','h','i','j'] 15 ['a','m','c','d','h','i','j']
F、刪除操作
通用刪除:del 後徹底刪除指定內容,按索引刪除,刪除的資料不能賦值操作,沒有返回值。
預設刪除列表中最後一個元素:pop( );在括號內寫明要刪除指定位置元素:pop(索引位置),能返回刪除的值
指名道姓的表示要刪除哪個元素:remove( ),沒有返回值
m=['a','b',3,4,5] del m[1] print(m) #輸出結果 ['a',3,4,5] res=m.pop( 2) print(m) print(res) #輸出結果 ['a','b',,4,5] 3 n=m.remove('b') print(m) print(n) #輸出結果 ['a',3,4,5] None
G、排序操作
顛倒列表中的元素順序用:reverse( )
列表中是相同資料型別,可以用sort( )給列表內的元素按大小順序排序,預設從小到大排序;如果要按從大到小的順序排,可以用reverse,即:reversr=True