python_0基础开始_day05
一、字典
-
python的數(shù)據(jù)結(jié)構(gòu)之一
-
字典 —— dict
-
定義:dic = {"key":"dajjlad"}
-
作用:存儲(chǔ)數(shù)據(jù),大量,將數(shù)據(jù)和數(shù)據(jù)起到關(guān)聯(lián)作用
-
字典是可變的數(shù)據(jù)類(lèi)型,無(wú)序的
-
所有的操作都通過(guò)鍵
# 鍵:必須是不可變的數(shù)據(jù)類(lèi)型(可哈希),且唯一 ? 不可哈希就是可變數(shù)據(jù)類(lèi)型
# 值:任意
dic = {"10":"蘋(píng)果手機(jī)", # ? 鍵 值 對(duì)
? ? ? "11":"蘋(píng)果手機(jī)",
? ? ? "15”:"小米手機(jī)",
? ? ? "15":"華為手機(jī)",
? ? ? (1,):"oppo手機(jī)",
? ? ? }
1.1字典的增:
暴力添加
dic = {'a': '上天', 'b': ['入地', '通幽'], 'c': '吃飯', 'd': '救苦救難'}dic["二狗"] = "我的太陽(yáng)" # 添加的是一個(gè)鍵值對(duì)
dic["騰格爾"] = ["來(lái)自草原的沙塵暴","音樂(lè)界的泥石流"]
# 新的鍵如果在字典中沒(méi)有,那會(huì)添加到最后字典的后面;
# 如果有,那將新值替換舊值
有則不添加,無(wú)則添加
dict.setdefaullt(鍵,值)
dic = {'a': '上天', 'b': ['入地', '通幽'], 'c': '吃飯', 'd': '救苦救難'}dic.setdefault("b",["沿著","江山","起起","伏"]) # 鍵存在,所以不添加
dic.setdefault("武器",["刀","槍","棍","棒","斧"])# 鍵為新,在最后一個(gè)鍵值對(duì)后面添加
# setdefault 添加分為2步:
# 1,先查看鍵是否在字典
# 2,不存在的時(shí)候進(jìn)行添加
1.2字典的刪除:
pop(鍵) —— 通過(guò)鍵刪除,具有返 回值
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"}dic.pop("1") # 刪除了 "1":"上樹(shù)" 這個(gè)鍵值對(duì)
clear() —— 清空
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"}dic.clear() # 清空該字典,保留空字典
del —— 刪除
del dict —— 刪除的是容器
del dict["鍵"] —— 通過(guò)鍵刪除
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"}del dic # 刪除的是整個(gè)字典
del dic["3"] # 只刪除 "3":"開(kāi)黑" 這個(gè)鍵值對(duì)
1.3字典的改
字典名[鍵] = 值
# 和字典的暴力添加一樣dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"}
dic["2"] = "星宿老仙,法力無(wú)邊" # 直接定位鍵,修改值
字典名.update(新字典)——在最后一個(gè)鍵值對(duì)后面,迭代添加
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"}dic1 = {"天山派":"星宿老仙,法力無(wú)邊","少林":"龍抓手"}
dic.update(dic1)
print(dic) #{'1': '上樹(shù)', '2': '遛狗', '3': '開(kāi)黑', '4': '打團(tuán)', '天山派': '星宿老仙,法力無(wú)邊', '少林': '龍抓手'}
dic1.update(dic)
print(dic1)#{'天山派': '星宿老仙,法力無(wú)邊', '少林': '龍抓手', '1': '上樹(shù)', '2': '遛狗', '3': '開(kāi)黑', '4': '打團(tuán)'}
1.4字典的查
字典名.get(鍵,找不到的換回None)
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"} print(dic.get("5")) # 返回 None print(dic.get("5","找不到啊")) # 返回 找不到啊 print(dic.get("2")) # 返回 遛狗字典名.setdefault(鍵)
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"} print(dic.setdefault("3")) # 返回開(kāi)黑 print(dic.setdefault("77")) # 返回 None print(dic["4"]) # 也可直接查找,沒(méi)有就是報(bào)錯(cuò)-
字典名.keys() ——所有的鍵,獲取到的是一個(gè)高仿列表
-
字典名.values() —— 所有的值,獲取到的是一個(gè)高仿列表
-
intems() —— 鍵值
-
注意:高仿列表支持迭代,不支持索引
?
-
for循環(huán),返回的是字典的鍵
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"} for i in dic:print(i) # 循環(huán)出的是字典的鍵1.5解構(gòu)
-
在字典中返回的是鍵
-
解構(gòu)在字典中的作用:
dic = {"1":"上樹(shù)","2":"遛狗","3":"開(kāi)黑","4":"打團(tuán)"} for k,v in dic.items():print('這是鍵',k)print('這是值',v) """ 結(jié)果: 這是鍵 1 這是值 上樹(shù) 這是鍵 2 這是值 遛狗 這是鍵 3 這是值 開(kāi)黑 這是鍵 4 這是值 打團(tuán) """-
*__是一個(gè)萬(wàn)能值,萬(wàn)能接受
lis = [1,2,3,4,5,6,7,8]# 取出來(lái)1,2,5 a,b,c,d,e,*__ = lis print(a,b,e) # 結(jié)果 1 2 5
-
1.6字典的嵌套
?
dic = {11:{1:{"秦":"嬴政","秦二世","李斯","商鞅","章邯","蒙恬"}, ? ? ? ? ? ? ? ? ? ? ? ?2:{"漢":"劉邦","韓信","衛(wèi)青","霍去病"} ? ? ? ? ? ? ? ?3:{"三國(guó)":"魏","蜀","吳"}}, ? ? ? ? ? 22:{1:{"歌唱家":{"劉歡":["我和你","彎彎的月亮"]}}, ? ? ? ? ? ? ? ? ? ?2:{"鄧紫棋":["泡沫","喜歡你","天堂","光年之外"]}, ? ? ? ? ? ?3:{"騰格爾":["隱形的翅膀","卡路里","日不落"]}}, ? ? ? ? ? 33:{1:{"蔡徐坤":{"唱":["雞你太美"],"跳":["鋼管舞"],"rap":["大碗面"],"籃球":("NBA形象大使")}}, ? ? ? ? ? ? ?2:{"JJ":{"行走的CD":["江南","曹操","背對(duì)背擁抱","小酒窩","不潮不花錢(qián)"]}}, ? ? ? ? ? ? ? ? ? ?3:{"Jay":{"周董":["菊花臺(tái)","雙節(jié)棍","霍元甲"]}}}, ? ? ? ? ? 44:{1:{"韋小寶":{"雙兒":"刺客","建寧":{"公主":{"吳三桂":"熊"}},"龍兒":{"教主老婆":"教主"}}}} ? ? } print(dic[201][1]["韋小寶"]["建寧"]["公主"]["吳三桂"])# 熊 print(dic[103][1]["蔡徐坤"]["跳"][0])# 鋼管舞 print(dic[102][2]["鄧紫棋"][1]) # 黑風(fēng)雷后續(xù)還會(huì)持續(xù)更新,從入門(mén)到放棄? ^.^。
轉(zhuǎn)載于:https://www.cnblogs.com/linglichong/p/11317966.html
總結(jié)
以上是生活随笔為你收集整理的python_0基础开始_day05的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 使用Arthas 获取Spring Ap
- 下一篇: websocket python爬虫_p