Python字典的11個方法超級詳解

Python字典是一種可變容器模型,且可存儲任意類型對象,如字符串、數字、元組等其他容器模型。

print(dir(dict))
['clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

01 clear()

描述:清除字典中所有的元素,得到的是空的字典。返回值None

語法:dict.append(object)

參數:object可以添加 列表,字典,元組,集合,字符串等。

 dic = {"python3":123}

print(dic.clear())

None

02 copy()

描述:返回一個字典淺拷貝的副本

語法:dict.copy()

參數:無

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ羣:579817333 
尋找有志同道合的小夥伴,互幫互助,羣裏還有不錯的視頻學習教程和PDF電子書!
'''
dict1 = {'Name': 'Xiaowuge', 'Age': 17};

dict2 = dict1.copy()

str(dict2)

"{'Name': 'Xiaowuge', 'Age': 17}"

03 fromkeys()

描述: 創建一個新字典,以序列 seq 中元素做字典的鍵, value 爲字典所有鍵對應的初始值。

語法: dict . fromkeys ( seq [, value ])

參數:

  • seq – 字典鍵值列表。

  • value – 可選參數, 設置鍵序列(seq)的值。

seq = ('Google', 'Baidu', 'Taobao')
dict.fromkeys(seq)

{'Google': None, 'Baidu': None, 'Taobao': None}

dict.fromkeys(seq, 1)

{'Google': 1, 'Baidu': 1, 'Taobao': 1}

04 get()

描述: 返回指定鍵的值,如果值不在字典中返回default值

語法:dict.get(key, default=None)

參數:

  • key – 字典中要查找的鍵。

  • default – 如果指定鍵的值不存在時,返回該默認值。

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ羣:579817333 
尋找有志同道合的小夥伴,互幫互助,羣裏還有不錯的視頻學習教程和PDF電子書!
'''
dic = {"uiui":"ioio"}

dic.get('uiui')

'ioio'

print(dic.get("uiuiui","我是第二個參數,字典中不存在參數一中的鍵"))

'我是第二個參數,字典中不存在參數一中的鍵'

print(dic.get("uiuiui"))

None

05 items()

描述: 列表返回可遍歷的(鍵, 值) 元組數組。

語法:dict.items()

參數:無

dict = {'name':'Alice','age':23,'address':'Hangzhou'}

dict.items()

dict_items([('name', 'Alice'), ('age', 23), ('address', 'Hangzhou')])

最終得到的是一個dict_items對象。這個對象也是一個可迭代對象,可以用iter方法將其轉化爲一個迭代器,其將字典的每一個鍵值對都轉化成了元組

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ羣:579817333 
尋找有志同道合的小夥伴,互幫互助,羣裏還有不錯的視頻學習教程和PDF電子書!
'''
dic1 = iter(dict.items())

for i in dic1:

print(i)

print(type(i))

#同時進行引用循環

dict = {'name':'Alice','age':23,'address':'Hangzhou'}

for i,v in dict.items():

print(i+':'+str(v))

name:Alice

age:23

address:Hangzhou

06 keys()

描述: 以列表返回一個字典所有的鍵。

語法: dict . keys ()

參數:無

dict = {'name':'Alice','age':23,'address':'Hangzhou'}

dict.keys()

dict_keys(['name', 'age', 'address'])

list(dict.keys())#轉換成列表

['name', 'age', 'address']

07 pop()

描述:顧名思義讓字典中的某個鍵對應的項“離開”字典。

語法:pop(key[,default])

參數:

  • key: 要刪除的鍵值

  • default: 如果沒有 key,返回 default 值

接受兩個參數,第一個參數爲鍵,第二個參數爲可選參數,如果字典中不存在第一個參數中的鍵,

則返回第二個參數。如果沒有傳入第二個參數,則拋出keyerror。

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ羣:579817333 
尋找有志同道合的小夥伴,互幫互助,羣裏還有不錯的視頻學習教程和PDF電子書!
'''
dict = {'name':'Alice','age':23,'address':'Hangzhou'}

dict.pop('age')

23

print(dict)

{'name': 'Alice', 'address': 'Hangzhou'} #age沒了

08 popitem()

描述:刪除字典中某一鍵值對,並以元組的形式返回這一鍵值對,返回並刪除字典中的最後一對鍵和值。

語法:dict. popitem ()

參數:無

注意:pop 和 popitem 是字典中的刪除操作。pop 是以字典的 “鍵” 爲參數,刪除指定的鍵 / 值對,pop 中的參數不能省略且如果刪除字典中沒有的鍵 / 值對,會報錯。

dict = {'name':'Alice','age':23,'address':'Hangzhou'}

dict.popitem()

('address', 'Hangzhou')

print(dict)

{'name': 'Alice', 'age': 23}

09 setdefault()

描述: 如果鍵不存在於字典中,將會添加鍵並將值設爲默認值。Python 字典 setdefault() 函數和 get()方法 類似

語法:dict.setdefault(key, default=None)

參數:

  • key – 查找的鍵值。

  • default – 鍵不存在時,設置的默認鍵值。

'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ羣:579817333 
尋找有志同道合的小夥伴,互幫互助,羣裏還有不錯的視頻學習教程和PDF電子書!
'''
dict = {'name':'Alice','age':23,'address':'Hangzhou'}

dict.setdefault('name')

'Alice'

print(dict)

{'name': 'Alice', 'age': 23, 'address': 'Hangzhou'}

#身高這個鍵,看看有沒有,沒有就加進去

dict.setdefault('high',178)

178

dict

{'name': 'Alice', 'age': 23, 'address': 'Hangzhou', 'high': 17}

10 update()

描述:更新字典的鍵值對,將參數中字典中的鍵值對更新到字典中,此方法無返回值

語法:dict.update(dict)

參數:dict-- 添加到指定字典dict裏的字典。

dict = {'name':'Alice','age':23,'address':'Hangzhou'}

dict.update({'age':80})

print(dict)

{'name': 'Alice', 'age': 80, 'address': 'Hangzhou'}

11 values()

描述:返回字典中所有鍵對應的值

語法: dict . values ()

參數:無

dict = {'name':'Alice','age':23,'address':'Hangzhou'}

dict.values()

dict_values(['Alice', 23, 'Hangzhou'])

dict = {'nick':'帥氣小王子','item':'長袖短款','price':29.99,'prov':'杭州'}

dict.values()

dict_values(['帥氣小王子', '長袖短款', 29.99, '杭州'])
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章