標籤:唯讀 range append 除了 sort 清空 for 不可 pop
列表介紹:
在代碼中以‘[ ]‘ 表示的是列表,可以存放任何的資料類型每個元素通過‘,’進行分隔
列表具有與字串一樣的索引和切片的功能
列表的增刪改查
1.增 (append,insert,extend)
文法1:列表1.append(元素) >>>直接將元素添加列表的尾端
文法2:列表1.insert(索引位置,要插入的元素)>>>將要插入的元素放在索引的位置上,原來的在該索引位置上的元素且在該索引後面的元素全部往後移動一個位置
文法3:列表1.extend(‘可迭代的對象) 可迭代對象可以包括,字串,元素,列表,字典等。在添加的時候,將可迭代對象裡面的每一個元素一個個拿出來添加到列表1中
2.刪(pop,remove,clear,del)
文法1:列表1.pop() >>> 在預設的情況下,每次執行命令都會將該列表的最後一個元素進行刪除,並將刪除的元素返回,也可以通過索引指定刪除哪個元素eg: list1.pop(1)
文法2:列表1.remove(‘直接要刪除的元素‘) 每次只能刪除一次最先匹配到的元素,如果要刪除列表中重複的元素的話,只能重複執行該命令
文法3: 列表1.clear() 直接清空列表中的所有元素
文法4:del 列表1[::] 根據索引或者切片將擷取到的內容刪除
3.改 直接根據索引對列表的元素進行修改
list2 = [‘豬肚雞‘,‘紙包魚‘,‘豆腐花‘,‘麻辣香鍋‘,‘清蒸大蝦‘,‘胡椒煮豬肚‘]list2[0] = ‘魚香茄子‘ #將索引位置為0 的元素更改為魚香茄子print(list2)list2[1:3] = [‘麻辣燙‘] #迭代修改,將切片找到的內容刪除後,## 在對應開始的位置中從右邊的可迭代對象每個元素添加到裡面,注意數字不是可迭代對象print(list2)#注意:如果切片的步長不是1的話,切片之後取出多少個元素,就要使用對應多少個元素進行一一替換list2[::2] = [‘a‘,‘b‘,‘c‘]print(list2)
#結果如下:
4.查詢,一般通過for 迴圈的方式遍曆整個列表
#方法1 直接遍曆for i in list2: print(i)#方法2 遍曆的時候,同時列印索引位置for i in range(len(list2)): print(i,list2[i])
列表的其他功能:sort,reverse,count,index
#文法:list3.sort(key=None,reverse = False)list3 = [3,7,9,31,1,2,3]list3.sort() #元素按照升序進行排序 如果reverse = Ture 的話,那麼排序就是按照降序的方式進行排序print(list3)#如果key不可空的話 可以是一個式子如list3.sort(key=lambda x:-x ) #直接將所有的元素以實參的形式傳遞到式子中,在按照升序進行排序print(list3)
結果:
# 文法:list3.count(‘要計算的元素‘)list3 = [3,7,9,31,1,3,6]a = list3.count(3)print(a)#文法:list3.reverse() 直接對整個列表的元素進行翻轉list3.reverse()print(list3)
結果:
關於元組tuple():
在代碼中由() 進行表示,但是在建立的時候如果是一個元素的話,記得子該元素後面添加一個逗號,否則()會被認為是運算子中的一部分 eg:(3+5)*3
元組與str 和int 的資料類型都是不可變類型,
元組在建立之後的,所有在元組的第一層記憶體位址都是不可變的
由於元組是不可變的,相當於只有唯讀功能的列表,所有,元組除了沒有增刪改的功能之外,其餘列表具有的功能,元組同樣具有
列表與元組的基本操作