標籤:預設 查詢 ase 從右至左 形式 表示 pytho color pre
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基礎】--列表相關基礎知識