字典是另一種可變容器模型,且可儲存任意型別物件。
字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式如下所示:
d =
鍵必須是唯一不可變的(數字、字串、元組),但值則不必。
值可以取任何資料型別,但鍵必須是不可變的,如字串,數字或元組。
乙個簡單的字典例項:
dict =也可如此建立字典:
dict1 =
dict2 =
把相應的鍵放入到方括號中,如下例項: 訪問的鍵值不在字典裡會報錯
#!/usr/bin/python3dict =
print ("dict['name']: ", dict['name'])
print ("dict['age']: ", dict['age'])
向字典新增新內容的方法是增加新的鍵/值對,修改或刪除已有鍵/值對如下例項:
#!/usr/bin/python3dict =
dict['age'] = 8 # 存在則更新 age
dict['school'] = "菜鳥教程" # 不存在則 新增資訊
print ("dict['age']: ", dict['age'])
print ("dict['school']: ", dict['school'])
能刪單一的元素也能清空字典,清空只需一項操作。
顯示刪除乙個字典用del命令,如下例項:
#!/usr/bin/python3dict =
del dict['name'] # 刪除鍵 'name'
dict.clear() # 清空字典
del dict # 刪除字典
字典值可以是任何的 python 物件,既可以是標準的物件,也可以是使用者定義的,但鍵不行。
兩個重要的點需要記住:
1)不允許同乙個鍵出現兩次。建立時如果同乙個鍵被賦值兩次,後乙個值會被記住,如下例項:
#!/usr/bin/python3dict =
print ("dict['name']: ", dict['name'])
》dict['name']: 小菜鳥
2)鍵必須不可變,所以可以用數字,字串或元組充當,而用列表就不行,如下例項:
python字典包含了以下內建函式:
計算字典元素個數,即鍵的總數。len(dict)
>>> dict =
>>> len(dict)
3
輸出字典,以可列印的字串表示。str(dict)
>>> dict =
>>> str(dict)
""
返回輸入的變數型別,如果變數是字典就返回字典型別。type(variable)
>>> dict =
>>> type(dict)
刪除字典內所有元素dict.clear()
dict =
dict.clear()
返回乙個字典的淺複製dict.copy()
dict1 =
dict2 = dict1.copy()
建立乙個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值dict.fromkeys(seq,val) #字典類直接使用的函式dict.fromkeys
seq -- 字典鍵值列表。
value -- 可選引數, 設定鍵序列(seq)對應的值,預設為 none。
以下例項展示了 fromkeys()函式的使用方法:
例項#!/usr/bin/python3
seq = ('name', 'age', '***')
dict = dict.fromkeys(seq)
print ("新的字典為 : %s" % str(dict))
dict = dict.fromkeys(seq, 10)
print ("新的字典為 : %s" % str(dict))
以上例項輸出結果為:
新的字典為 :
新的字典為 :
返回指定鍵的值,如果值不在字典中返回default值dict.get(key, default=none)
key -- 字典中要查詢的鍵。
default -- 如果指定鍵的值不存在時,返回該預設值值。
以下例項展示了 get()函式的使用方法:
#!/usr/bin/python3
dict =
print ("age 值為 : %s" % dict.get('age'))
print ("*** 值為 : %s" % dict.get('***', "na"))
以上例項輸出結果為:
age 值為 : 27
*** 值為 : na
如果鍵在字典dict裡返回true,否則返回falsekey in dict
python 字典 in 操作符用於判斷鍵是否存在於字典中,如果鍵在字典 dict 裡返回 true,否則返回 false。
而 not in 操作符剛好相反,如果鍵在字典 dict 裡返回 false,否則返回 true。
以列表返回可遍歷的(鍵, 值) 元組陣列dict.items()
以下例項展示了 items() 方法的使用方法:
例項#!/usr/bin/python3
dict =
print ("value : %s" % dict.items())
以上例項輸出結果為:
value : dict_items([('age', 7), ('name', 'runoob')])
for k,y in dict.items():
print(k,y) #同時獲取鍵和值
返回乙個迭代器,可以使用 list() 來轉換為列表 包含所有鍵dict.keys()
>>> dict =
>>> dict.keys()
dict_keys(['name', 'age'])
>>> list(dict.keys()) # 轉換為列表
['name', 'age']
>>>
以上例項輸出結果為:
字典所有的鍵為 : dict_keys(['age', 'name'])
和get()類似, 但如果鍵不存在於字典中,將會新增鍵並將值設為defaultdict.setdefault(key, default=none)
key -- 查詢的鍵值。
default -- 鍵不存在時,設定的預設鍵值。
如果 key 在 字典中,返回對應的值。如果不在字典中,則插入 key 及設定的預設值 default,並返回 default ,default 預設值為 none。
#!/usr/bin/python3
dict =
print ("age 鍵的值為 : %s" % dict.setdefault('age', none))
print ("*** 鍵的值為 : %s" % dict.setdefault('***', none))
print ("新字典為:", dict)
以上例項輸出結果為:
age 鍵的值為 : 7
*** 鍵的值為 : none
新字典為:
把字典dict2的鍵/值對更新到dict裡dict.update(dict2)
dict =
dict2 =
dict.update(dict2)
print ("更新字典 dict : ", dict)
以上例項輸出結果為:
更新字典 dict :
dict.values()
返回乙個迭代器,可以使用 list() 來轉換為列表
#!/usr/bin/python3
dict =
print ("字典所有值為 : ", list(dict.values()))
以上例項輸出結果為:
字典所有值為 : ['female', 7, 'zara']
pop(key[,default])
刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key值必須給出。 否則,返回default值
popitem()隨機返回並刪除字典中的最後一對鍵和值。
字典怎麼增加元素 python3基礎之字典
字典和列表一樣,也是python內建的一種資料結構。字典的結構如下圖 列表用中括號把元素包起來,而字典是用大括號 把元素包起來,只不過字典的每乙個元素都包含鍵和值兩部分。鍵和值是一一對應的關係。畫個難看的圖表示一下 字典中的鍵要求是唯一的,這個很好理解,如果有兩個鍵是一樣的,那我怎麼知道要找到是哪個...
Python3入門系列之 字典
字典是一種可變容器模型,且存放任何型別對像 如 字串,數字,或者列表甚至字典 每個字典有鍵名 key 和鍵值 value 且用冒號 隔開 多個字典用逗號 隔開整個字典包括在花括號中 示例 注 key為鍵名,name為鍵值 dict dict 執行結果 name print dict key dict...
Python3 教程 字典
字典是另一種可變容器模型,且可儲存任意型別物件 字典的每個鍵值 key value 對用冒號 分割,每個鍵值對之間用逗號 分割,整個字典包括在花括號 中 格式如下所示 d dict print dict name dict name print dict age dict age dict name...