Python之字典(dictionary)


一、字典

字典dict是無序的
字典的存儲數據形式 key-value的數據形式

#dir()查看他的方法
data={"name":"lisi","age":20,"work":"測試開發工程師"}
print(dir(data))
'''
'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']
name
'''
1 # clear清空
2 data={"name":"lisi","age":20,"work":"測試開發工程師"}
3 data.clear()
4 print(data)
1 #pop刪除 並且返回刪除的元素
2 data={"name":"lisi","age":20,"work":"測試開發工程師"}
3 print(data.pop("age"))
4 print(data)

 

1 # copy復制
2 data={"name":"lisi","age":20,"work":"測試開發工程師"}
3 data2=data.copy()
4 print(data2)

 

1 # update 合並
2 data={"name":"lisi","age":20,"work":"測試開發工程師"}
3 dict1={"sex":""}
4 data.update(dict1)
5 print(data)

 

data={"name":"lisi","age":20,"work":"測試開發工程師"}
#獲取所有的key
for key in data.keys():
    print(key)

#獲取所有的value
for value in data.values():
    print(value)

 

#獲取key對應的具體的value
data={"name":"lisi","age":20,"work":"測試開發工程師"}
#獲取名字
print(data.get("name"))
print(data["name"]) #一般用第二種
#獲取工作
print(data["work"])

 

1 #對字典進行循環
2 data={"name":"lisi","age":20,"work":"測試開發工程師"}
3 for key,value in data.items():
4     print(key,":",value)

 

#需求:key=="age"並且value==20輸出我今年20歲了
data={"name":"lisi","age":20,"work":"測試開發工程師"}
for key,value in data.items():
    if key=="age" and value==20:
        print("我今年20歲了")

 

 

二、字典案例實戰

1.

 1 data={  2   "datas": [  3  {  4       "author": "wuya",  5       "done": True,  6       "id": 1,  7       "name": "Python接口自動化測試實戰"
 8  },  9  { 10       "author": "無涯", 11       "done": False, 12       "id": 2, 13       "name": "Selenium3自動化測試實戰"
14  } 15  ], 16   "msg": "ok", 17   "status": 0 18 } 19 #需求:輸出Python接口自動化測試實戰
20 print(data["datas"][0]["name"]) 21 
22 #需求:輸出Selenium3自動化測試實戰
23 print(data["datas"][1]["name"])

2.

1 data={"status":0, 2       "msg":"ok", 3       "datas":[ 4           {"name":"lisi","age":10},{"name":"god","age":20,"work":["test",{"language":"Python語言"}]} 5  ] 6  } 7 #需求:輸出python語言
8 print(data["datas"][1]["work"][1]["language"])

3.

1 data={"status":0, 2       "msg":"ok", 3       "datas":[{"name":"lisi","age":10},{"name":"god","age":20,"work":["test",{"language":"Python語言","school":["北京大學",{"專業":"計算機科學與技術"}]}]}] 4  } 5 
6 #輸出計算機科學與技術
7 print(data["datas"][1]["work"][1]["school"][1]["專業"])

4.

1 data=["language",{"語言":["Go","Python","Java"]}] 2 # 輸出結果是:Go,Python,Java
3 print(",".join(data[1]["語言"]))

5.

 1 data1={"status":0,"datas":[{"name":"lisi","score":90},  2                            {"name":"wangmazi","score":88},  3                            {"name":"wangwu","score":60},  4                            {"name":"zhaosi","score":59},  5                            {"name":"zhaosi","score":29}]}  6 #需求,對學生成績進行排序,從低到高排序
 7 listscore=[] #首先創建一個空列表  8 for item in data1["datas"]:  9     listscore.append(item["score"]) 10 listscore.sort() 11 print(listscore)

6.

 1 data2={"status":0,"datas":[  2   {"name":"lisi","score":90},  3   {"name":"wangmazi","score":88},  4   {"name":"wangwu","score":60},  5   {"name":"zhaosi","score":59}  6 ]}  7 #需求:輸出lisi,wangmazi,wangwu,zhaosi
 8 listname=[]  9 for item in data2["datas"]: 10     listname.append(item["name"]) 11 print(",".join(listname))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM