1. 程式人生 > 其它 >基本資料型別之列表

基本資料型別之列表

------------恢復內容開始------------

一、定義:形如: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