溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在python中使用dict

發(fā)布時(shí)間:2021-03-24 16:33:51 來源:億速云 閱讀:218 作者:Leah 欄目:開發(fā)技術(shù)

本篇文章為大家展示了如何在python中使用dict,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

dict的特性

dict是python中的一個(gè)可變的數(shù)據(jù)類型,用{}表示,dict的key必須是不可變的數(shù)據(jù)類型,而value的數(shù)據(jù)類型可以任意。

格式:{key:value,key:value,key:value}
注: 鍵值對(duì)如果是字符串使用單引號(hào),最后一個(gè)鍵值對(duì)沒有逗號(hào)

dict的優(yōu)點(diǎn)

①:查詢速度快,可以二分查找

②:key是不可以重復(fù)的

注:   

不可變數(shù)據(jù)類型: 元組,bool,int , str 可以hash set

可變數(shù)據(jù)類型: dict ,list

dict的方法

1,增加的方法:dict有兩種增加的方法

(1),如果沒有的鍵值對(duì),則進(jìn)行添加,如果有,則將值進(jìn)行覆蓋

dict1={'name':'jinxin','age':18,'male':'男'}
print(dict1)
dict1['high']=185
print(dict1) # {'name': 'jinxin', 'age': 18, 'male': '男', 'high': 185}
dict1['age']=16
print(dict1) # {'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185}

(2),如果有鍵值對(duì),不做任何改變,沒有鍵值對(duì),才進(jìn)行添加

dict1.setdefault("weight")
print(dict1) #{'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None}
dict1.setdefault('weight','65kg')
print(dict1) #{'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None}
dict1.setdefault('address','北京')
print(dict1) #{'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None, 'address': '北京'}

2,dict的刪除方法

(1),使用pop()刪除,如果有鍵,則刪除,如果沒有則會(huì)報(bào)錯(cuò),如果不希望出現(xiàn)報(bào)錯(cuò)信息,可以在刪除的后面添加信息

delDict={'name': 'jinxin', 'age': 16, 'male': '男', 'high': 185, 'weight': None, 'address': '北京'}
# delDict.pop('age') #dict的刪除操作是有返回值的
print(delDict.pop('age')) # 16
print(delDict) #{'name': 'jinxin', 'male': '男', 'high': 185, 'weight': None, 'address': '北京'}
print(delDict.pop('職業(yè)','沒有此鍵')) #沒有此鍵

(2),使用popitem()刪除,隨機(jī)刪除,返回的是一個(gè)元組,元組里面存儲(chǔ)的刪除的鍵值,推薦使用pop()方法進(jìn)行刪除

print(delDict.popitem()) # ('address', '北京')

隨機(jī)刪除,返回值是刪除的鍵值對(duì)

print(delDict) #{'name': 'jinxin', 'male': '男', 'high': 185, 'weight': None}

(3),使用del()刪除,del()可以刪除整個(gè)字典,也可以刪除字典的某個(gè)鍵,如果刪除的鍵不存在,則會(huì)出現(xiàn)報(bào)錯(cuò)

del delDict['name']
print(delDict) #{'male': '男', 'high': 185, 'weight': None}
#使用del清空列表
del delDict
print(delDict) #delDict已經(jīng)刪除,報(bào)錯(cuò)

(4),清空列表也可以使用clear()

3,dict的修改

#直接修改
updateDict={'name':'jinxin','age':18,'male':'男'}
updateDict['name']='Jordan'
print(updateDict['name']) #Jordan

#調(diào)用update()修改
dictDemo={'name':"Jordan",'age':18}
dictDemo1={'address':'北京海淀','age':22}
dictDemo.update(dictDemo1)
print(dictDemo)

4,字典的查詢

(1)查詢字典的鍵:調(diào)用keys()方法

查詢字典的值:調(diào)用values()方法

# 字典的查
dict1={'name':'jinxin','age':18,'male':'男'}
print(dict1.keys()) #dict_keys(['name', 'age', 'male'])
print(dict1.values()) #dict_values(['jinxin', 18, '男'])
print(dict1.items())# dict_items([('name', 'jinxin'), ('age', 18), ('male', '男')])

#打印dict1的鍵
for i in dict1.keys():
  print(i ) # name age value

#打印dict的值
for v in dict1.values():
  print(v) #jinxin 18 男

#打印字典的鍵值:

dict1={'name':'jinxin','age':18,'male':'男'}

for i in dict1.items():
  print(i) # ('name', 'jinxin') ('age', 18) ('male', '男')
  
for k,v in dict1.items():
  print(k,v) # name jinxin age 18  male 男

(2),字典的get()方法:使用get()方法可以查詢某個(gè)鍵是否存在,如果不存在此鍵,則會(huì)返回None,但是可以在get()方法中添加信息避免出現(xiàn)None

dict1={'name':'jinxin','age':18,'male':'男'}
print(dict1.get('name')) #jinxin
print(dict1.get('address')) # None
print(dict1.get('address','沒有此鍵')) #沒有此鍵

上述內(nèi)容就是如何在python中使用dict,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI