1. 程式人生 > >【python基礎】--列表相關基礎知識

【python基礎】--列表相關基礎知識

PE 刪除 結果 使用 查找 方法 從大到小 類型 pen

1.定義列表

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
索引(下標)都是從0開始的,例中的"xiaoyi"索引位置是0,"xiaoer"的索引位置就是1

引申:如何判斷當前數據類型是否為一個列表格式?可以使用python內置的type方法進行判斷,使用方法如下

type(a) is list

通過返回的布爾值進行判斷,True為是,Flase為否

2.增刪改查

查:

輸出列表中第一個元素print (a[0])

輸出列表中全部的內容:print (a[0:])

#以下為列表切片查詢

輸出列表中除最後一個元素外的全部內容:print (a[0:-1])

輸出列表中從左到右取值,隔一個取一個值: print (a[0::2])#步長為2

輸出列表中全部內容,從右到左取值: print (a[::-1])

輸出列表中從右到左取值,隔一個取一個值: print(a[::-2])

固定位置從右向左隔一個取一個值,以‘xiaoba’為開始: print (a[7::-2])

增:

#兩種方法向列表中增加數據:insert/append

兩種方法的區別:append是直接追加元素到列表的最後一位,insert可以指定元素位置,插入元素到任何指定的索引

append實例:將‘xiaoshi’插入到a列表的最後一位

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
a.append(xiaoshi)
print(a)

insert實例:將‘xiaoshi’插入到a列表的第二位

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
a.insert(1,xiaoshi)
print(a)

改:

沒有特定的方法,通過重新賦值修改即可。

例1,此處需將索引值為1的‘xiaoer’修改為‘xiaoshi’:

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
a[1]=xiaoshi
print(a)

例1,此處需將索引值為1和2的‘xiaoer’,‘xiaosan‘ 批量修改為‘xiaoshi’,‘xiaoshiyi‘:

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
a[1:3]=[xiaoshi,xiaoshiyi]
print(a)

刪:

#三種方法刪除列表中的數據:remove/pop/del

三種方法的區別:remove是通過元素來刪除數據的, pop是通過索引刪除的,並且,pop是可以返回刪除的值的。del是python內置的刪除方法,除了可以用於刪除列表數據,還可以用於刪除其他形式的數據。這裏del可以都用於刪除整個a變量

remove方法實例:刪除列表中的‘xiaoer’

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
a.remove(xiaoer)
print(a)

pop方法實例:刪除列表中‘xiaoer’,並用變量b接收刪除的對象值,打印b查看刪除的數據

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
b=a.pop(1)
print(a)
print(b)

#註:pop方法若不指定刪除位置,則默認刪除列表最後一列值。

del方法實例:刪除列表中的‘xiaoer’

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
del a[1]
print(a)

#註:remove和pop只能刪除單個值,del可以通過切片刪除多個

引申:使用clear方法,可將列表內容進行清空,使用方法:a.clear()

列表的其他方法:

1.count:用於統計某個元素在列表中出現的次數

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu].count(xiaoyi)
print(a)

2.extend:用於將某列表的數據追加至原列表中(擴展)

a=[xiaoyi,xiaoer,xiaosan,xiaosi]
b=[xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
a.extend(b)
print(a)

3.index:用於知道元素的值,使用元素值查找索引

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
print(a.index(xiaosan))

4.reverse:將列表中的元素順序整體倒置

a=[xiaoyi,xiaoer,xiaosan,xiaosi,xiaowu,xiaoliu,xaioqi,xiaoba,xiaojiu]
a.reverse()
print(a)
執行結果:[‘xiaojiu‘, ‘xiaoba‘, ‘xaioqi‘, ‘xiaoliu‘, ‘xiaowu‘, ‘xiaosi‘, ‘xiaosan‘, ‘xiaoer‘, ‘xiaoyi‘]

5.sort:將列表中的元素按照Ascii編碼進行從小到大的排序

b=[1,3,4,8,2,9,7]
b.sort()
print(b)
結果:[1, 2, 3, 4, 7, 8, 9]

引申:sort方法能不能從大到小排序?

可以,sort方法內置了一個remove條件,默認remove=Flase,是從小到大的排序,通過sort內置的方法,在調用sort方法時,將remove=True即可


b=[1,3,4,8,2,9,7]
b.sort(reverse=True) 
print(b)
結果:[9, 8, 7, 4, 3, 2, 1]

6.查詢某一個元素是否存在於列表中

兩種方法,1是用剛才提到的count方法,若列表名.count("元素名")結果為0,則表示此元素不在列表中。

2是使用print(“元素名” in 列表名)的方式進行查詢,返回結果為Flase,則表示此元素不在列表中;返回True則存在

【python基礎】--列表相關基礎知識