Python數據類型詳解——列表
在“Python之基本數據類型概覽”一節中,大概介紹了列表的基本用法,本節我們詳細學一下列表。
如何定義列表
:在
[]
內以英文里輸入法的逗號
,
,按照索引,存放各種數據類型,每個位置代表一個元素。
回顧一下列表的特點 :
1、可存放多個值。
2、按照從左到右的順序定義列表元素,下標從0開始順序訪問,是有序的。
3、可修改指定索引位置對應的值,可變。
一、列表元素的增加操作
1、追加
用
append
方法將數據追加到列表的尾部
names = ['Kwan', 'Kobe']
names.append('KK')
names.append('LL')
print(names)
2、插入
用
insert
方法,可將數據插入任何位置
names = ['Kwan', 'Kobe', 'KK', 'LL']
names.insert(2, '小明')
print(names)
3、合并
用
extend
方法,可以把另外一個列表的值合并進來
names = ['Kwan', 'Kobe', 'KK']
n = ['小明', '小紅']
names.extend(n)
print(names)
4、列表嵌套
names = ['Kwan', 'Kobe', 'KK']
names.insert(2, ['李白', 'sh'])
print(names)
print(names[2][1])
二、刪除操作
1、del 直接刪除
names = ['Kwan', 'Kobe', 'KK']
del names[1]
print(names)
2、pop
names = ['Kwan', 'Kobe', 'KK', 'LL']
names.pop() # 括號里不加參數,默認刪除最后一個元素并返回被刪除的值
names.pop(1) # 刪除指定索引的元素
print(names)
3、clear 清空
names = ['Kwan', 'Kobe', 'KK']
names.clear()
print(names)
三、修改操作
直接重新賦值即可
names = ['Kwan', 'Kobe', 'KK', "LL"]
names[1] = 'James'
names[3] = '小明'
print(names)
四、查找操作
index()
方法用來查找對應元素的索引,
count()
方法用來計算指定元素的個數
names = ['Kwan', 'Kobe', 'KK', '小明', 'Kwan','LL']
print(names.index('KK'))
print(names.count('Kwan'))
五、切片
切片就像切面包,可以同時取出元素的多個值。
語法:
name[start : end]
names = ['Kwan', 'Kobe', 'KK', 'LL', '小明']
print(names[1:3]) # 不會包含索引為3的元素'LL'
注:切片的特性是 顧頭不顧尾 ,即start對應索引的元素會被包含進去,但是尾部只會包含到 end-1 。
1、倒著切片
names = ['Kwan', 'Kobe', 'KK', '小明', 'Kwan','LL']
print(names[-4:-1])
因為顧頭不顧尾的特性,此時并未將最后一個打印出來,如果想把最后一個也包含進來該怎么做呢?
names = ['Kwan', 'Kobe', 'KK', '小明', 'Kwan','LL']
print(names[-4:]) # 要取到最后一個,直接不寫左邊的參數即可
同理,要取到第一個值:
names = ['Kwan', 'Kobe', 'KK', '小明', 'Kwan','LL']
print(names[:4]) # 也可寫成names[0:4]
2、步長
通過設置步長,可以實現間隔取值
語法:
names[start : end : step]
num = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(num[0:7:2]) # 打印索引為0的元素到索引為6的元素,步長為2
print(num[::3]) # 打印全部元素,步長為3
3、列表反轉
通過把步長設置成負值,可達到列表反轉的效果
num = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(num[::-1])
print(num[::-2])
六、排序、反轉
1、排序
a = [34, 43, 65, 23, 12, 5]
a.sort()
print(a)
但是下面的排序結果該如何解釋呢?
names = ['Kwan', 'Kobe', 'KK', '@', '小明']
names.sort()
print(names)
答案全在下面這張表上:
2、反轉
使用
reverse()
方法
names = ['Kwan', 'Kobe', 'KK', '@', '小明']
names.reverse()
print(names)
七、列表循環
names = ['Kwan', 'Kobe', 'KK', '@', '小明']
for i in names: # 也可以不用i,只要符合變量名規則都可以
print(i)
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
