一篇文章帶你弄懂Python基礎(chǔ)之字典知識(shí)
共 5005字,需瀏覽 11分鐘
·
2024-08-24 10:00
回復(fù)“Go語(yǔ)言”即可獲贈(zèng)從入門到進(jìn)階共10本電子書
大家好,我是Go進(jìn)階者,今天給大家分享一些Python基礎(chǔ) (字典),一起來(lái)看看吧~
一、前言
如果有列表 ,需要對(duì)"xiaoWang"這個(gè)名字寫錯(cuò)了,則要通過(guò)對(duì)應(yīng)的索引值進(jìn)行代碼修改。
nameList = ['xiaoZhang', 'xiaoWang', 'xiaoLi']nameList[1] = 'xiaoxiaoWang
如果列表的順序發(fā)生了變化,如下:
nameList = ['xiaoWang', 'xiaoZhang', 'xiaoLi']
此時(shí)就需要修改下標(biāo),才能完成名字的修改。
nameList[0] = 'xiaoxiaoWang'
有沒(méi)有方法,既能存儲(chǔ)多個(gè)數(shù)據(jù),還能在訪問(wèn)元素的很方便就能夠定位到需要的那個(gè)元素呢?這就是字典。
二、字典的介紹
字典和列表一樣,也能夠存儲(chǔ)多個(gè)數(shù)據(jù)。
列表中找某個(gè)元素時(shí),是根據(jù)下標(biāo)進(jìn)行的。
字典中找某個(gè)元素時(shí),是根據(jù)'名字'(就是冒號(hào):前面的那個(gè)值,例如上面代碼中的'name'、'id'、'sex')。
字典的每個(gè)元素由2部分組成,鍵:值。例如 'name':'班長(zhǎng)' ,其中'name'為鍵,'班長(zhǎng)'為值。
根據(jù)鍵訪問(wèn)值
例:
info = {'name':'班長(zhǎng)', 'id':100, 'sex':'f', 'address':'地球亞洲中國(guó)北京'}print(info['name'])print(info['address'])
運(yùn)行結(jié)果:
若訪問(wèn)不存在的鍵,則會(huì)報(bào)錯(cuò):
> info['age']Traceback (most recent call last):File "<stdin>", line 1, in <module>KeyError: 'age'
在我們不確定字典中是否存在某個(gè)鍵而又想獲取其值時(shí),可以使用get方法,還可以設(shè)置默認(rèn)值。
> age = info.get('age')> age #'age'鍵不存在,所以age為None> type(age)<type 'NoneType'>> age = info.get('age', 18) # 若info中不存在'age'這個(gè)鍵,就返回默認(rèn)值18> print(age)18 #運(yùn)行結(jié)果
1. 字典的常見(jiàn)操作
<1> 添加元素
info = {'name':'班長(zhǎng)', 'sex':'f', 'address':'地球亞洲中國(guó)北京'}print('id為:%d'%info['id'])
運(yùn)行結(jié)果:
如果在使用 變量名['鍵'] = 數(shù)據(jù) 時(shí),這個(gè)“鍵”在字典中,不存在,那么就會(huì)新增這個(gè)元素。
添加新的元素。
info = {'name':'班長(zhǎng)', 'sex':'f', 'address':'地球亞洲中國(guó)北京'}# print('id為:%d'%info['id'])#程序會(huì)終端運(yùn)行,因?yàn)樵L問(wèn)了不存在的鍵newId = input('請(qǐng)輸入新的學(xué)號(hào)')info['id'] = newIdprint('添加之后的id為:%d'%info['id'])
運(yùn)行結(jié)果:
請(qǐng)輸入新的學(xué)號(hào)188添加之后的id為: 188
<2> 刪除元素
對(duì)字典進(jìn)行刪除操作,有一下幾種:
del
clear()
del刪除指定的元素
info = {'name':'班長(zhǎng)', 'sex':'f', 'address':'地球亞洲中國(guó)北京'}print('刪除前,%s'%info['name'])del info['name']print('刪除后,%s'%info['name'])
運(yùn)行結(jié)果:
del刪除整個(gè)字典。
info = {'name':'monitor', 'sex':'f', 'address':'China'}print('刪除前,%s'%info)del infoprint('刪除后,%s'%info)
運(yùn)行結(jié)果:
clear清空整個(gè)字典。
info = {'name':'monitor', 'sex':'f', 'address':'China'}print('清空前,%s'%info)info.clear()print('清空后,%s'%info)
運(yùn)行結(jié)果:
<3> 修改元素
字典的每個(gè)元素中的數(shù)據(jù)是可以修改的,只要通過(guò)key找到,即可修改。
info = {'name':'班長(zhǎng)', 'id':100, 'sex':'f', 'address':'地球亞洲中國(guó)北京'}newId = input('請(qǐng)輸入新的學(xué)號(hào)')info['id'] = int(newId)print('修改之后的id為%d:'%info['id'])
運(yùn)行結(jié)果:
2. 字典的常見(jiàn)操作2
<1>len()
測(cè)量字典中,鍵值對(duì)的個(gè)數(shù)。
dict={"name":'zahnsan','sex':'m'}print(len(dict))
運(yùn)行結(jié)果:
<2>keys
返回一個(gè)包含字典所有KEY的列表。
dict={"name":'zahnsan','sex':'m'}print(dict.keys())
運(yùn)行結(jié)果:
<3>values
返回一個(gè)包含字典所有value的列表。
dict={"name":'zahnsan','sex':'m'}print(dict.values())
運(yùn)行結(jié)果:
<4>items
返回一個(gè)包含所有(鍵,值)元祖的列表。
dict={"name":'zahnsan','sex':'m'}print(dict.items())
運(yùn)行結(jié)果:
三、遍歷
語(yǔ)法:通過(guò)for ... in ...:的語(yǔ)法結(jié)構(gòu),我們可以遍歷字符串、列表、元組、字典等數(shù)據(jù)結(jié)構(gòu)。
注意 :Python語(yǔ)法的縮進(jìn)
先看一下字符串,列表和元組是怎么遍歷的。
字符串遍歷
a_str = "hello itcast"for char in a_str:print(char,end=' ')...h e l l o i t c a s t #運(yùn)行結(jié)果
列表遍歷
a_list = [1, 2, 3, 4, 5]for num in a_list:print(num,end=' ')...1 2 3 4 5 #運(yùn)行結(jié)果
元組遍歷
a_turple = (1, 2, 3, 4, 5)for num in a_turple:print(num,end=" ")1 2 3 4 5 #運(yùn)行結(jié)果
字典遍歷
1 . 遍歷字典的key(鍵)
2 . 遍歷字典的value(值)
3. 遍歷字典的項(xiàng)(元素)
4. 遍歷字典的key-value(鍵值對(duì))
5. enumerate()
chars = ['a', 'b', 'c', 'd']for i, chr in enumerate(chars):print(i, chr)
運(yùn)行結(jié)果:
四、總結(jié)
本文以生活中字典的實(shí)際應(yīng)用,主要介紹了Python字典的基礎(chǔ)知識(shí),用豐富的案例,幫助大家更好的去了解字典常見(jiàn)的的基礎(chǔ)操作。
使用Python編程語(yǔ)言,加深讀者對(duì)字典的認(rèn)識(shí),希望對(duì)大家的學(xué)習(xí)有幫助。
------------------- End -------------------
往期精彩文章推薦:
歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Go學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群】
萬(wàn)水千山總是情,點(diǎn)個(gè)【在看】行不行
