1. 程式人生 > >Python之List列表

Python之List列表

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

Python有6個序列的內建型別,但最常見的是列表和元組。

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

此外,Python已經內建確定序列的長度以及確定最大和最小的元素的方法。

列表是最常用的Python資料型別,它可以作為一個方括號內的逗號分隔值出現。

列表的資料項不需要具有相同的型別,靈活度較高。

python的list是可變資料型別,它支援新增 append、插入 insert、修改、刪除del等操作。

==============================================================================================================

一、列表的建立

1. 建立空列表:

list=[]

listName=list()

2. 可以把python中的list列表理解為任意對像的序列,只要把需要的引數值放入到中括號[  ]裡面就可以了,就像下面這樣操作:

 names = ['ada','amy','ella','sandy']

列表可以包含不同型別對像,也支援巢狀(多維陣列):

例:a = ['a',567,['adc',4,[12,'a']],(1,2)]

這個列表中就包含了字串、整型、元組這些元素,同時還嵌套了一個列表。

 

二、新增新元素

1. list.append

() 在list 末尾增加一個元素

例:name.append('4ds')

2. list.insert(100,'4ds') 在指定位置新增元素,如果指定的下標不存在,那麼就是在末尾新增

3. list1.extend(list2) 合併兩個list   list2中仍有元素

例:list1=['a','b','c',0]

       list2=[1,2,3,'d',6]

       list1.extend(list2) 

       print(list1)  ====>['a','b','c',0,1,2,3,'d',6]

 

三、修改更新

listName[7]='haha' #更新第8個元素的值為:haha
print('updated',listName)


四、檢視列表長度
print('列表的長度是:',len(list1)) #返回列表中元素總個數   ===》9

五、檢視列表中的值

1. 列表是有序的,可以通過python list下標來修改特定位置的值。

name = ['0test1','1yrd','2sdfh','3sdf']
print(name[2] #查詢下標為2的元素  ===》2sdfh
print(name[-1]) #索引取負數時,從最後一個元素開始查詢  ===》3sdf
2. 遍歷列表 (詳情參見list迴圈、切片)

例1:
mylist = [1,2,3,4]

   for i in mylist:

  print(i)

等同於:

例2:mylist = [1,2,3,4]

for i in range(len(mylist))

  print(mylist[i]) 每個元素都有一個地址

3. 檢視某個元素在列表中出現的次數(個數)

print(list.count(‘xx’)) 檢視某個元素在這個列表裡的個數,如果該元素不存在,那麼返回0

4. 檢視某個元素的下標、索引值

print(list.index(‘xx’))找到這個元素的下標(索引),如果有多個,返回第一個,如果找一個不存在的元素會報錯

 

六、刪除列表中的元素及列表刪除

1. list.pop() 刪除最後一個元素,有返回值,返回被刪除的元素

2. list.pop(n)指定下標,刪除指定的元素,如果刪除一個不存在的元素會報錯

3. list.remove(xx) 刪除list 裡面的一個元素,有多個相同的元素,刪除第一個 ;無返回值,顯示None

4. del  list[n] 刪除指定下標對應的元素 ,n為負數時,從最後一個元素開始找起

5. del list 刪除整個列表, list刪除後無法訪問

6. list.clear() 清空列表,返回一個空列表

 

七、反轉和排序

1. list.reverse() 將列表反轉

2. list.sort()排序,預設升序且只能對同資料型別的列表進行排序,否則報錯

如:

mylist = ['b','wwds','a','912d','5wer']

 

mylist.sort()
print(mylist) ===》['5wer', '912d', 'a', 'b', 'wwds']

 

3. list.sort(reverse=True) 降序排列  ==>['wwds', 'b', 'a', '912d', '5wer']

注:list 中有字串,數字時不能排序,排序針對同類型

 

八、布林值,返回true或者fales

print(1<2) ==True