Python 容器(Collections)
Python 有四種容器數(shù)據(jù)類型:
- 列表(List)
- 元組(Tuple)
- 無序集合(Set)
- 字典(Dictionary)
列表(List)
序列中每個元素分配一個數(shù)字塔橡,即元素的位置仔沿,或稱之為索引,由 0 開始禾酱,第二個是 1,以此類推资厉。
序列常見操作包括索引泄朴、切片、加棒妨、乘踪古、檢查成員含长。
列表以方括號內(nèi)的逗號分隔值出現(xiàn)。
列表的數(shù)據(jù)項可以有不同的類型伏穆,無需是同一類型拘泞。
創(chuàng)建列表
lis = ['八戒','悟空','沙僧',1,6]
lis2 = [1,5,3]
lis3 = ["唐僧","白骨精","玉帝"]
print(lis)
print(lis2)
print(lis3)
結(jié)果為:
['八戒', '悟空', '沙僧', 1, 6]
[1, 5, 3]
['唐僧', '白骨精', '玉帝']
訪問列表
使用索引來訪問列表值,如:
lis = ['八戒','悟空','沙僧',1,6]
lis2 = [1,5,3]
lis3 = ["唐僧","白骨精","玉帝"]
print('lis[0]: ', lis[0])
print('lis3[0:2]', lis3[0:2])
結(jié)果為:
lis[0]: 八戒
lis3[0:2] ['唐僧', '白骨精']
更新列表值
lis = ['八戒','悟空','沙僧',1,6]
print('第四個元素是:', lis[3]) # 第四個元素原值
lis[3] = '東海龍王' # 修改第四個元素為 "東海龍王"
print('第四個元素是:', lis[3])
結(jié)果是:
第四個元素是: 1
第四個元素是: 東海龍王
刪除元素列表值
刪除元素列表值有多種方法枕扫,如:
示例:可用 del 列表
刪除列表元素
lis3 = ["唐僧","白骨精","玉帝"]
print('原列表為:', lis3)
del lis3[1] # 刪除第二個元素 "白骨精"
print('現(xiàn)在列表為:', lis3)
結(jié)果為:
原列表為: ['唐僧', '白骨精', '玉帝']
現(xiàn)在列表為: ['唐僧', '玉帝']
示例:可用 remove(元素)
刪除列表元素
lis3 = ["唐僧","白骨精","玉帝"]
print('原列表為:', lis3)
lis3.remove('白骨精') # 刪除第二個元素 "白骨精"
print('現(xiàn)在列表為:', lis3)
結(jié)果為:
原列表為: ['唐僧', '白骨精', '玉帝']
現(xiàn)在列表為: ['唐僧', '玉帝']
示例:可用 pop()
刪除列表元素陪腌,如果不指定索引,則移除最后一個元素
lis3 = ["唐僧","白骨精","玉帝"]
print('原列表為:', lis3)
lis3.pop(1) # 刪除第二個元素 "白骨精"
print('現(xiàn)在列表為:', lis3)
結(jié)果為:
原列表為: ['唐僧', '白骨精', '玉帝']
現(xiàn)在列表為: ['唐僧', '玉帝']
示例:可用 clear()
清空列表
lis3 = ["唐僧","白骨精","玉帝"]
print('原列表為:', lis3)
lis3.clear() # 清空列表
print('現(xiàn)在列表為:', lis3)
結(jié)果為:
原列表為: ['唐僧', '白骨精', '玉帝']
現(xiàn)在列表為: []
添加元素
示例:使用 append(元素)
在列表末尾添加元素
lis = ["紅孩兒","哪吒","二郎神"]
lis.append('龍王三太子')
print(lis)
結(jié)果:['紅孩兒', '哪吒', '二郎神', '龍王三太子']
示例:使用 insert(索引位置,元素)
在指定位置插入元素
lis = ["紅孩兒","哪吒","二郎神"]
lis.insert(1,'龍王三太子')
print(lis)
結(jié)果:['紅孩兒', '龍王三太子', '哪吒', '二郎神']
拷貝列表
不可以直接使用 list2 = list1 的方式直接拷貝烟瞧,因為這種方式只是讓 list2 引用(或指向) list1诗鸭,結(jié)果是對 list1 的任何更改都會同樣應用到 list2,因為兩個列表本來就指向同一個對象参滴。
有兩種方式可以達到拷貝列表的目的:
示例:使用 copy()
方法
lis = ['金箍棒','九齒釘耙','降妖寶杖']
list_copy = lis.copy()
print("list_copy 列表內(nèi)容為:", list_copy)
結(jié)果為:
list_copy 列表內(nèi)容為: ['金箍棒', '九齒釘耙', '降妖寶杖']
示例:使用 list(列表)
構(gòu)造函數(shù)
lis = ['金箍棒','九齒釘耙','降妖寶杖']
list_copy = list(lis)
# 或者 list_copy = list(['金箍棒','九齒釘耙','降妖寶杖'])
# 或者 list_copy = list(('金箍棒','九齒釘耙','降妖寶杖'))
print("list_copy 列表內(nèi)容為:", list_copy)
結(jié)果為:
list_copy 列表內(nèi)容為: ['金箍棒', '九齒釘耙', '降妖寶杖']