Python之字典常用的方法一
字典是Python提供的一種常用的數(shù)據(jù)結(jié)構(gòu),它用于存放具有映射關(guān)系的數(shù)據(jù)。是一種可變?nèi)萜髂P?,且可存儲任意類型對象。字典是一個無序、可變和有索引的集合。在 Python 中,字典用花括號編寫{},擁有鍵值對即key和value組成,字典的每個鍵值對用冒號 : 分割,每個鍵值對之間用逗號 , 分割。字典中的鍵具有唯一性,如果鍵重復(fù),則后邊的鍵對應(yīng)的值會把前面鍵對應(yīng)的值替換掉,值可以取任何數(shù)據(jù)類型,但鍵必須是不可變的,如字符串,數(shù)字或元組都可以為字典的鍵,但是列表不可以作為key值。 eg:
dict1 = {"name":"張三","age":18,"地址":"China"}
dict2 = {"a":1,"b":2,"c":1,"d":3}
dict3 = {1:"a",2:"b",3:"c"}
dict4 = {} 表示創(chuàng)建一個空的字典
1、訪問字典中的值
python中訪問字典是通過key來訪問字典中的值,如果用字典里沒有的鍵訪問數(shù)據(jù),會輸出錯誤。
eg:
dict1 = {"name":"張三","age":18,"地址":"China"}
m = dict1["name"]
print(m)
此時打印結(jié)果為“張三”表示訪問字典key為“name”對應(yīng)的值,
2、訪問字典中所有的key或者所有的value
eg:
dict1 = {"name":"張三","age":18,"地址":"China"}
m = dict1.keys()
n = dict1.values()
print(m)
print(n)
此時打印結(jié)果為m的為dict_keys(['name', 'age', '地址']),獲取了字典dict1中所有的key的值. n的為dict_values(['張三', 18, 'China']),獲取了字典dict1中所有的value的值。
3、修改字典
字典中增加新的鍵對值,或者修改已有鍵對應(yīng)的值
增加新的鍵對值:
dict1 = {"name":"張三","age":18,"地址":"China"}
dict1["成績"]="優(yōu)秀"
print(dict1)
此時打印結(jié)果為{'name': '張三', 'age': 18, '地址': 'China', '成績': '優(yōu)秀'},字典dict1增加一個鍵為“成績”值為“優(yōu)秀”的鍵對值。
修改已有鍵對應(yīng)的值:
dict1={'name': '張三', 'age': 18, '地址': 'China', '成績': '優(yōu)秀'}
dict1["name"]="李四"
print(dict1)
此時打印結(jié)果為{'name': '李四', 'age': 18, '地址': 'China', '成績': '優(yōu)秀'},把字典dict1中key為”name“對應(yīng)的值有張三更改成了李四。
4、刪除字典元素 del()方法能刪除單一元素,也可以刪除字典,刪除字典以后,字典就不存在了
刪除單一元素:
dict1={'name': '張三', 'age': 18, '地址': 'China', '成績': '優(yōu)秀'}
del dict1['成績']
print(dict1)
此時打印結(jié)果為{'name': '張三', 'age': 18, '地址': 'China'},刪除了字典dict1中key為“成績”和對應(yīng)的value的值。
刪除字典:
dict1={'name': '張三', 'age': 18, '地址': 'China', '成績': '優(yōu)秀'}
del dict1
print(dict1)
此時打印結(jié)果為“NameError: name 'dict1' is not defined”表示字典dict1已經(jīng)不存在了,因為字典dict1已經(jīng)被刪除了。
5、清空字典 因del為刪除字典,如果想清空字典可以用dict.clear()方法,表示清空字典中所有的鍵對值。
eg:
dict1={'name': '張三', 'age': 18, '地址': 'China', '成績': '優(yōu)秀'}
dict1.clear()
print(dict1)
此時打印結(jié)果為{},表示清空了字典dict1中的所有值,字典dict1就位一個空的字典。