元組,字典
阿新 • • 發佈:2020-12-23
今日內容:
一、元組 tuple
1、用途:元組就相當於一種不可變的列表,所以說元組也是按照位置存放多個任意型別的元素
2、定義方式:在()內用逗號分隔開個多個任意型別的元素
x=(11)
print(x,type(x)) #值在()裡面,如果元組內只有一個元素,那麼必須用逗號分隔
t=(11,11.33,"xxx",[44,55]) # t = tuple(...)
print(t[-1][0])
print(type(t))
資料型別轉換 tuple(可迭代的型別)
3.常用操作+內建的方法
優先掌握的::
按索引取值(正向取+反向取):只能取 t=(11,22,33) t[0]=7777 #報錯
切片(顧頭不顧尾,步長)
t=(11,22,33,44,55,666)
print(t[0:4:2])
長度 len
t=(11,22,33,44,55,666)
print(len(t))
成員運算in和not in
t=(11,22,33,[44,55,666]) print([44,55,666] in t) #True
迴圈
t=(11,22,33,[44,55,666])
for x in t:
print(x) #False
需要掌握的:
t=(33,22,33,[44,55,666]) print(t.count(33))# 統計數量 print(t.index(33,1,4)) # 索引查詢位置
該型別的總結:
^ 存多個值
^ 不可變
二、字典型別 dict
1、用途:按照key : value的方式存放多個值,其中key對value應該有描述性的效果
2、定義方式:在{}內用逗號分隔開多個元素,每個元素都是key : value的組合,其中value可以是任意型別,但是key必須是不可變型別,通常是字串型別,並且key不能重複
資料型別轉換:
res = dict([("name","egon"),["age",18],["gender","male"]])
print(res)
res = dict(a=1,b=2,c=3)
print(res)
res = {}.fromkeys(['name',"age","gender"],None) res = {}.fromkeys(['name',"age","gender"],11) res["name"]=666 print(res) #fromkeys獲取key值 or res = {}.fromkeys(['name',"age","gender"],[]) res["name"]=666 res["name"].append(1111111) print(res)
3、常用操作+內建的方法
優先掌握:
按key存取值:可存可取
d={"k1":111,'k2':222}
print(d['k1'])
d['k1']=6666 #以原來的k1替代
d['k3']=6666 #直接加上k3
print(d)
長度len
d={"k1":111,'k2':222}
print(len(d))
成員運算in和not in: 判斷的是key
d={"name":"egon",'age':18} print("name" in d)
刪除 del
d={"name":"egon",'age':18}
print(d)
del d["name"] #直接刪除,萬能刪除
pop 刪除(“ ")
v = d.pop("name")
print(d)
popitem 返回並刪除字典中最後一對鍵和值,item是刪除的返回值
d={"name":"egon",'age':18}
item = d.popitem()
print(item)
print(d)
鍵keys(),值values(),鍵值對items()
d={"name":"egon",'age':18,"gender":"male"}
print(d.keys())
print(d.values())
print(d.items())
列印--
dict_keys(['name', 'age', 'gender'])
dict_values(['egon', 18, 'male'])
dict_items([('name', 'egon'), ('age', 18), ('gender', 'male')])
迴圈
d={"name":"egon",'age':18,"gender":"male"}
for k in d.keys(): 或者 d.values():
print(k) #迴圈keys 或 values
d={"name":"egon",'age':18,"gender":"male"}
for k,v in d.items():
print(k,v) #解壓賦值
用列表列印
d={"name":"egon",'age':18,"gender":"male"}
print(list(d.keys()))
print(list(d.values()))
print(list(d.items()))
get 獲取valuer值
d={"name":"egon",'age':18,"gender":"male"}
print(d.get("name"))
需要掌握:
clear 清空字典
d={"name":"egon",'age':18,"gender":"male"}d.clear()
print(d)
d.copy() # 淺copy
key不存在則新增key:value,key如果存在則什麼都不做,如:
d={"name":"egon",'age':18,"gender":"xxx"}
if "ooo" not in d:
d['ooo']="male"
print(d)
結果:{'name': 'egon', 'age': 18, 'gender': 'xxx', 'ooo': 'male'}
or---
d.setdefault("ppp","ooo")
print(d) #兩個意思一樣,如沒有值,會新增
字典內容更新
d={"name":"egon",'age':18,"gender":"male"}
d.update({"k1":111,"name":"xxx"})
print(d)
#key原值會更新,如沒有,會新增
總結該型別:
^ 存多個值
^ 無序
^ 可變