字典
字典是python中唯一的對映型別,採用鍵值對(key-value)的形式儲存資料。python對key進行雜湊函式運算,根據計算的結果決定value的儲存位址,所以字典是無序儲存的,且key必須是可雜湊的。可雜湊表示key必須是不可變型別,如:數字、字串、元組。
字典(dictionary)是除列表意外python之中最靈活的內建資料結構型別。列表是有序的物件結合,字典是無序的物件集合。兩者之間的區別在於:字典當中的元素是通過鍵來訪問的,而不是通過偏移訪問。
可變資料型別:列表list,字典dict 又叫不可雜湊
不可變資料型別: 元祖,bool值,數字int,字元型str 本身不可變,又叫可雜湊
key 鍵,必須是不可變型別,可雜湊
value 值,任意資料型別
建立空字典使用
字典dict優點:
1,用二分法查詢,查詢速度快
2,儲存大量的關係型資料
字典dick特點:
字典dict是無序的。(3.5及之前的字典dict是無序的)
簡寫為dic
dic = ,
'qq':123
print(dic)
結果 , 'qq': 123}
增,兩種方法(注意與列表list區別)
直接加,如果沒有對應鍵值,則直接加在後面。如果有對應鍵值,則進行覆蓋。
dic1 =
dic1['height'] = 180
print(dic1)
dic.setdefault('') 形式,有對應鍵值,則不做任何修改。沒有對應鍵值,後面預設加none
dic = ,
'qq':123
dic.setdefault('weighe')
print(dic)
dic.setdefault('weighe',180) 另一種形式
dic = ,
'qq':123
dic.setdefault('weighe',180)
print(dic)
結果 , 'qq': 123, 'weighe': 180}
刪,dic.pop(『』)直接刪
dic =
dic.pop('age')
print(dic)
有返回值,返回被刪除的鍵值
dic =
s = dic.pop('age')
print(s)
結果18
可設定返回值,如果沒有對應的被刪鍵值,返回自己設定的值,就是下面的『不錯』
dic =
s = dic.pop('aa','不錯') #如果aa變成name,則返回小明
print(s)
結果 不錯
dic.popltem()形式,隨機刪除乙個,3.6版本預設刪除最後乙個
dic =
dic.popitem()
print(dic)
結果 dic = #這種,有返回值
print(dic.popitem())
結果 ('age', 18)
清空列表
dic =
dic.clear()
print(dic)
結果 {}
改直接改
dic =
dic['age'] = 16
print(dic)
dic1.update(dic)覆蓋增加,把dic覆蓋增加到dic1中,
dic =
dic1 =
dic1.update(dic)
print(dic1)
dic和dic1中對應的鍵,則用dic的鍵值覆蓋dic1的,dic沒有與dic1中對應的減,則直接加入dic1中,dic1中多的鍵值,則直接保留結果查
dic['直接查']直接查,沒有會報錯
dic =
print(dic["name"])
dic.get('high','設定返回的值『)
dic =
print(dic.get("high","預設返回值") ) # 沒有可以返回設定的返回值
#print(dic.get('high')) 預設返回none
只列印鍵
dic = = dic =
for i in dic: = for i in dic.keys():
print(i) = print(i)
結果 name 結果 name
age age
只列印值
dic =
for i in dic.values():
print(i)
結果 xiaoming
a = 1
b = 2
a,b = b,a
print(a,b)
items 同時列印keys 和 valuces
dic =
for i in dic.items():
print(i)
python字典換行輸出 Python字典如何換行
python字典如何換行 python字典換行的方法如下 1 換行時保證行尾是逗號即可a key2 val2 key3 val3 key4 val4 key5 val5 注意這種情況下,每一行第乙個非空白字元都要和第一行的括號後的字元對齊,並且最後的括號是不換行 直接跟在最後乙個元素後面 的。3 另...
python實現字典排序 python 字典排序
引子 字典,形如 dic 字典中的元素沒有順序,所以dic 0 是有語法錯誤的。並且不可以有重複的鍵值,所以 dic.add c 4後,字典變成 待解決問題 如何根據需要可以根據 鍵 或 鍵值 進行不同順序的排序?函式原型 sorted dic,value,reverse dic為比較函式,valu...
python操作字典 Python 字典操作高階
學習了 python 基本的字典操作後,學習這些高階操作,讓寫出的 更加優雅簡潔和 pythonic 與字典值有關的計算 問題想對字典的值進行相關計算,例如找出字典裡對應值最大 最小 的項。解決方案一 假設要從字典 中找出值最小的項,可以這樣做 d min zip d.values d.keys 2...