字典是另一種可變容器模型,且可存儲任意類型對象。
字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ;
字典值可以沒有限制地取任何python對象,既可以是標準的對象,也可以是用戶定義的;但鍵不行,如果同一個鍵被賦值兩次,后一個值會被記住。
值可以取任何數據類型,但鍵必須是不可變的,如字符串,數字或元組(列表這樣的可變類型不能作為鍵)。
一、字典的創建、訪問:
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
dict2 = { }; //空字典
print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];
字典中包含列表:
dict={'yangrong':['23','IT'],"xiaohei":['22','dota']}
字典中包含字典:
dict={'yangrong':{"age":"23","job":"IT"},"xiaohei":{"'age':'22','job':'dota'"}}
二、 字典的 修改、添加:
dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry
三、 字典的 刪除:
del dict['Name']
# 刪除鍵是'Name'的條目
dict.clear()
# 清空字典所有條目
del dict?
# 刪除字典
四、查詢字典中是否包含指定鍵:
dict.has_key(k)
如果鍵在字典dict里返回true,否則返回false
查看所有鍵值對:
dict.keys()
、
dict.values()
、
dict.items()
;返回值的類型為列表
五、遍歷 字典 :
for d,x in dict.items():
print "key:"+d+",value:"+x
for k in dict.keys():
print "key:"+k+",value:"+dict[k]
六、字典排序:
按照key進行排序
print sorted(dict1.items(), key=lambda d: d[0])
或:
sorted(d.items(), lambda x, y: cmp(x[0], y[0]))
反序:
sorted(d.items(), lambda x, y: cmp(x[0], y[0]), reverse=True)
按照value進行排序
print sorted(dict1.items(), key=lambda d: d[1])
或:
sorted(d.items(), lambda x, y: cmp(x[1], y[1]))
反序:
sorted(d.items(), lambda x, y: cmp(x[1], y[1]), reverse=True)
下面說一下list,dict與set的區別
list:
按距離差訪問元素
順序訪問,速度慢
存儲空間要求小
dict:
按索引訪問元素
需要大空間,但訪問很快
set:
元素不可重復
其它和dict基本類似
集合支持一系列標準操作,包括并集、交集、差集和對稱差集,例如:?
a = t | s????????? # t 和 s的并集
b = t & s????????? # t 和 s的交集
c = t ?C s????????? # 求差集(項在t中,但不在s中)
d = t ^ s????????? # 對稱差集(項在t或s中,但不會同時出現在二者中)
靈活使用字典將對你的Python編程工作帶來很大的幫助,大家一定要熟練掌握Python字典的使用方法
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
