說說 Python 的巢狀式資料結構

巢狀式資料結構指的是:字典儲存在列表中, 或者列表作為值儲存在字典中。甚至還可以在字典中巢狀字典。
1 字典列表
列表中包含字典。比如花名冊:
people1 = {'name': '林旭恆', 'school': '安徽師範大學附屬中學'} people2 = {'name': '吳作同', 'school': '中山市第一中學'} people_list = [people1, people2] for people in people_list: print(people)
執行結果:
{'name': '林旭恆', 'school': '安徽師範大學附屬中學'}
{'name': '吳作同', 'school': '中山市第一中學'}
有的應用場景,會在列表中包含大量的字典, 而且其中的每個字典都會包含擁有眾多屬性的大物件。
2 列表字典
字典包含列表。比如圖書的標籤,一本書會被標註多個標籤:
book = {'title': '現代藝術150年', 'tags': ['藝術', '藝術史']} for tags in book['tags']: print(tags)
執行結果:
藝術
藝術史
在字典中,需要一個鍵關聯多個值時,我們就可以在字典中巢狀一個列表。
注意:列表和字典的巢狀層級不宜太多。 如果巢狀層級多於 2 級, 那麼可能有更好的解決方案。
3 字典中巢狀字典
比如說真實的英文單詞字典:
dict = {'evaporation': {'釋義': '蒸發', '詞性': 'n'}, 'carpenter': {'釋義': '木匠', '詞性': 'n'}} for word, info in dict.items(): print('單詞 ' + word + ' 釋義為:' + info['釋義'] + ',詞性為:' + info['詞性'])
執行結果:
單詞 evaporation 釋義為:蒸發,詞性為:n
單詞 carpenter 釋義為:木匠,詞性為:n