python 字典操作詳解
阿新 • • 發佈:2018-05-22
python字典操作
字典一種key – value 的數據類型,使用就像我們上學用的字典,通過筆劃、字母來查對應頁的詳細內容。
語法:
info ={
‘stu1001‘:"TengLan Wu",
‘Stu1002‘:"Longze Loula",
‘stu1103‘:"XiaoZe Maliya",
}
增刪改查
####字典的定義 key: value info ={ ‘stu1001‘:"TengLan Wu", ‘Stu1002‘:"Longze Loula", ‘stu1103‘:"XiaoZe Maliya", } #####查詢 字典的數據############### #####查詢所有,但是字典是無序的 print(info) #如果查詢一個只需要查詢對方的key print(info["stu1001"]) #不報錯方式查詢(安全點) print(info.get("stu1001")) ####### 修改###### info["stu1001"]="武藤蘭" print(info) #########添加######### info["stu1004"]="CangjingKong" print(info) ########刪除######## 兩種方法 #第一種 #del info["stu1001"] print(info) #第二種 info.pop("stu1103") print(info) #還有一個隨機刪除 info.popitem() #判斷字典裏面存不存在這個key print(‘stu1005‘ in info ) # 有的話返回TRUE #查詢所有的values print(info.values()) #查詢所有的key print(info.keys())
字典的多級嵌套
av_catalog={ "歐美":{ "www.youporn.com":["很多免費的,世界最大的","質量一般"], "www.pornhub.com":["很多免費,也很大","比youporn高點"], "letmedothistoyou.com":["多是自拍,高質量圖片很多","資源豐富"] }, "日韓":{ "tokyo-hot":["質量不清楚,個人已經不喜歡日韓","聽說是收費的"], }, "大陸":{ "1024":["全部免費。真好好人一生平安","服務器在國外,慢"] } } #修改多級嵌套 av_catalog["大陸"]["1024"][1]="可以在國內做鏡像" print(av_catalog)
各種其他的騷操作
#!/usr/bin/env python # -*- coding:utf-8 -*- # Author: liang info ={ ‘stu1001‘:"TengLan Wu", ‘Stu1002‘:"Longze Loula", ‘stu1103‘:"XiaoZe Maliya", } b={ ‘stu1001‘:"liang", 1:2, 2:5 } #update 合並字典 info.update(b) print(info) #輸出的結果如下 #{‘stu1001‘: ‘liang‘, ‘Stu1002‘: ‘Longze Loula‘, ‘stu1103‘: ‘XiaoZe Maliya‘, 1: 2, 2: 5} #items #字典轉為列表 print(info.items()) #初始化一個新的字典 #c=info.fromkeys([6,7,8]) c=dict.fromkeys([7,8,9],"test") print(c) #fromkeys 坑的地方 #如果裏面嵌套了一個字典,修改一個的時候就會修改所有的 #就像淺層copy一樣的 d=dict.fromkeys([7,8,9],[1,{"name":"liang"},444]) d[7][1][‘name‘]="cc" print(d)
字典循環
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: liang
info ={
‘stu1001‘:"TengLan Wu",
‘Stu1002‘:"Longze Loula",
‘stu1103‘:"XiaoZe Maliya",
}
#最基本的循環
for i in info:
print(i,info[i])
#這種循環花的時間比第一種長,建議使用第一種循環
for k,v in info.items():
print(k,v)
三級菜單的一個實現 超級low的一個代碼
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: liang
date={
‘北京‘:{
"昌平":{
"沙河":["oldboy","test"],
"天通往":["我愛我家","liang"]
},
"朝陽":{
"望經":["本詞","默默"],
"國貿":["CICC","HP"],
"東之夢":["Advent","飛信"]
}
},
"江西":{
"南昌":{
"南昌縣":["現代學院","江西師範大學"],
"新建縣":["江西南昌大學","江西農業大學"]
},
"撫州":{
"東鄉縣":["小黃","浴缸"],
"臨川區":["臨川二中","臨川一中"]
}
},
"湖南":{
"長沙":{
"aaaa":["vvv","aaaa"],
"cccc":["cada","cada"]
}
}
}
while True:
for i in date:
print(i)
choie=input("你要選擇那個城市?1>>>>>")
if choie in date:
while True:
for i2 in date[choie]:
print(i2)
choie2=input("你要選擇那個城市?2>>>>>")
if choie2 in date[choie]:
while True:
for i3 in date[choie][choie2]:
print(i3)
choie3 = input("你要選擇那個城市?3>>>>>")
if choie3 in date[choie][choie2]:
for i4 in date[choie][choie2][choie3]:
print(i4)
choie4=input("已經是最後一層!按b退出>>>>>")
if choie4 == ‘b‘:
pass
elif choie4 ==‘q‘:
exit("bye!!!!")
else:
print("你輸入的有誤")
if choie3== ‘b‘:
break
elif choie3 ==‘q‘:
exit("bye !!!")
else:
print("你輸入的有誤")
if choie2==‘b‘:
break
elif choie2==‘q‘:
exit("bye!!!!")
else:
print("你輸入的有誤")
if choie==‘b‘:
print("如果退出請按q")
elif choie ==‘q‘:
exit("bye !!!")
else:
print("你輸入的有誤")
python 字典操作詳解