Python使用字典的嵌套功能詳解
當(dāng)需要存儲很多同類型的不通過數(shù)據(jù)時可能需要使用到嵌套,先用一個例子說明嵌套的使用
1、在列表中存儲字典
student_1={'nationality':'China','colour':'yellow','age':'15'}
student_2={'nationality':'America','colour':'white','age':'18'}
student_3={'nationality':'Africa','colour':'dark','age':'17'}
grade = [student_1,student_2,student_3]
for student in grade:
print(student)輸出:
{‘nationality’: ‘China’, ‘age’: ‘15’, ‘colour’: ‘yellow’}
{‘nationality’: ‘America’, ‘age’: ‘18’, ‘colour’: ‘white’}
{‘nationality’: ‘Africa’, ‘age’: ‘17’, ‘colour’: ‘dark’}
注意,上邊的實例中就將字典作為列表的元素進(jìn)行了嵌套,然后利用列表進(jìn)行遍歷
下邊假設(shè)年級里有30個同樣年齡的中國學(xué)生,利用嵌套進(jìn)行生成
#定義一個存儲中國學(xué)生的列表,假設(shè)年齡都一樣
chinese=[]
#創(chuàng)建30個中國學(xué)生
for student in range(0,30):
student_1={'nationality':'China','colour':'yellow','age':'15'}
chinese.append(student_1)
#顯示一共創(chuàng)建了多少個學(xué)生
print('一共創(chuàng)建了:'+str(len(chinese))+'個學(xué)生')
#顯示前5個中國學(xué)生
for stu in chinese[:5]:
print(stu)輸出:
{‘colour’: ‘yellow’, ‘age’: ‘15’, ‘nationality’: ‘China’}
{‘colour’: ‘yellow’, ‘age’: ‘15’, ‘nationality’: ‘China’}
{‘colour’: ‘yellow’, ‘age’: ‘15’, ‘nationality’: ‘China’}
{‘colour’: ‘yellow’, ‘age’: ‘15’, ‘nationality’: ‘China’}
{‘colour’: ‘yellow’, ‘age’: ‘15’, ‘nationality’: ‘China’}
可是這么多學(xué)生的年齡都相同,顯得不夠自然
#定義一個存儲中國學(xué)生的列表,假設(shè)年齡都一樣
chinese=[]
#創(chuàng)建30個中國學(xué)生
for student in range(0,30):
student_1={'nationality':'China','colour':'yellow','age':'15'}
chinese.append(student_1)
#顯示一共創(chuàng)建了多少個學(xué)生
print('一共創(chuàng)建了:'+str(len(chinese))+'個學(xué)生')
for student_c in chinese[0:2]:
if student_c['nationality']=='China':
student_c['nationality']='America'
student_c['colour']='white'
student_c['age']=14
#顯示前5個中國學(xué)生
for stu in chinese[:5]:
print(stu)輸出:
一共創(chuàng)建了:30個學(xué)生
{‘colour’: ‘white’, ‘nationality’: ‘America’, ‘age’: 14}
{‘colour’: ‘white’, ‘nationality’: ‘America’, ‘age’: 14}
{‘colour’: ‘yellow’, ‘nationality’: ‘China’, ‘age’: ‘15’}
{‘colour’: ‘yellow’, ‘nationality’: ‘China’, ‘age’: ‘15’}
{‘colour’: ‘yellow’, ‘nationality’: ‘China’, ‘age’: ‘15’}
備注:學(xué)到這里發(fā)現(xiàn)列表和字典的知識有點薄弱啊
2、在字典中存儲列表
假設(shè)有個小店,里邊賣了2種粥,但是每種粥的配料都不一樣,利用一個字典記錄兩種粥及其配料
#為了簡化就不把配料全寫出來了
gruel={
'八寶粥':['大米','桂圓','紅棗','芡實','蓮子','薏仁','黑豆','核桃仁'],
'瘦肉粥':['大米','瘦肉']
}
for key,value in gruel.items():
print('\n'+key,end=':')
for batching in value:
print(batching, end=' ')輸出:
八寶粥:大米 桂圓 紅棗 芡實 蓮子 薏仁 黑豆 核桃仁
瘦肉粥:大米 瘦肉
注意:
為了實現(xiàn)print()輸出不換行,這里增加了end參數(shù)
配料作為列表存儲在了字典里
3、在字典中嵌套字典
以班里有兩個同學(xué)為示例
grade={
'趙麗穎':{
'國籍':'中國',
'民族':'漢',
'出生日期':'1987年10月16日',
'身高':'165cm',
},
'楊冪':{
'國籍':'中國',
'民族':'漢',
'出生日期':'1986年9月12日',
'身高':'166.5cm',
}
}
for name,info in grade.items():
print(name)
for key,value in info.items():
print(key+':'+value)輸出:
楊冪
國籍:中國
民族:漢
出生日期:1986年9月12日
身高:166.5cm
趙麗穎
國籍:中國
民族:漢
出生日期:1987年10月16日
身高:165cm
這一節(jié)主要學(xué)習(xí)了字典的嵌套功能,主要學(xué)習(xí)了列表中嵌套字典、字典中嵌套列表、字典中嵌套字典的方式實現(xiàn)字典的復(fù)雜運用
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
詳解Python對某地區(qū)二手房房價數(shù)據(jù)分析
這篇文章主要為大家介紹了Python數(shù)據(jù)分析某地區(qū)二手房房價,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2021-12-12
pandas組內(nèi)排序,并在每個分組內(nèi)按序打上序號的操作
這篇文章主要介紹了pandas組內(nèi)排序,并在每個分組內(nèi)按序打上序號的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03
python3 自動打印出最新版本執(zhí)行的mysql2redis實例
這篇文章主要介紹了python3 自動打印出最新版本執(zhí)行的mysql2redis實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04
Python零基礎(chǔ)入門學(xué)習(xí)之輸入與輸出
在之前的編程中,我們的信息打印,數(shù)據(jù)的展示都是在控制臺(命令行)直接輸出的,信息都是一次性的沒有辦法復(fù)用和保存以便下次查看,今天我們將學(xué)習(xí)Python的輸入輸出,解決以上問題2019-04-04
python 實現(xiàn)在一張圖中繪制一個小的子圖方法
今天小編就為大家分享一篇python 實現(xiàn)在一張圖中繪制一個小的子圖方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python實現(xiàn)基本線性數(shù)據(jù)結(jié)構(gòu)
這篇文章主要實現(xiàn)四種數(shù)據(jù)結(jié)構(gòu),分別是數(shù)組、堆棧、隊列、鏈表。大家都知道可以用C語言實現(xiàn)這幾種數(shù)據(jù)結(jié)構(gòu),其實Python也可以實現(xiàn),下面跟著小編一起來學(xué)習(xí)。2016-08-08

