亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

python中字典和列表的相互嵌套問(wèn)題

番茄西紅柿 / 3063人閱讀

摘要:在學(xué)習(xí)過(guò)程中遇到了很多小麻煩所以將字典列表的循環(huán)嵌套問(wèn)題進(jìn)行了個(gè)淺淺的總結(jié)分類(lèi)。外層嵌套訪問(wèn)列表中的每個(gè)字典內(nèi)層嵌套訪問(wèn)每個(gè)字典元素的鍵值對(duì)。

在學(xué)習(xí)過(guò)程中遇到了很多小麻煩,所以將字典列表的循環(huán)嵌套問(wèn)題,進(jìn)行了個(gè)淺淺的總結(jié)分類(lèi)。

  1. 列表中存儲(chǔ)字典
  2. 字典中存儲(chǔ)列表
  3. 字典中存儲(chǔ)字典
  4. 易錯(cuò)點(diǎn)

首先明確:

①訪問(wèn)字典中的元素:dict_name[key]? /? dict_name.get(key)
②訪問(wèn)列表中的元素:list_name[索引]
  1. 1.列表中存儲(chǔ)字典:

  • ①列表中存儲(chǔ)多個(gè)字典

p={'name':'lin','age':21}y={'name':'xue','age':20}c=[p,y]print(c)
  1. 輸出結(jié)果:[{'name': 'Jonh', 'age': 18}, {'name': 'Marry', 'age': 19}]
  2. ②訪問(wèn)列表中字典的值

  3. print(f"person's name is {people[0].get('name')}")print(f"{people[1].get('name')}'s age is {people[1].get('age')}")#先用person[0/1]訪問(wèn)列表里的元素(字典),再用get方法訪問(wèn)字典里的值

    輸出結(jié)果:

    person's name is JonhMarry's age is 19
  4. ③遍歷訪問(wèn)多個(gè)值

for person in people:                                            #將列表中的字典,依次賦值給person                           print(f"{person['name']}'s age is {person['age']}")              #取出每個(gè)循環(huán)里變量person(字典)的鍵和值

?輸出結(jié)果:

Jonh's age is 18Marry's age is 19

?因?yàn)樽值渲杏卸鄠€(gè)鍵值對(duì),所以進(jìn)行多層嵌套。

外層嵌套訪問(wèn)列表中的每個(gè)字典,內(nèi)層嵌套訪問(wèn)每個(gè)字典元素的鍵值對(duì)。

for person in people:        #在每個(gè)遍歷的字典里再進(jìn)行嵌套(內(nèi)層循環(huán))    for k,v in person.items():                  print(f"{k}:{v}")

輸出結(jié)果:

name:Jonhage:18name:Marryage:19

2.字典中存儲(chǔ)列表

①訪問(wèn)字典中的列表元素

先用list[索引]訪問(wèn)列表中的元素,用dict[key]方法訪問(wèn)字典中的值。

favourite_places={    'lin':['beijing','tianjin'],    'jing':['chengdu','leshan'],    'huang':['shenzhen']}#訪問(wèn)字典中的值可以用:dict_name[key]print(favourite_places['lin'])#訪問(wèn)列表里面的元素用索引:list_name[索引]print(favourite_places['lin'][0].title())

輸出結(jié)果:?

['beijing', 'tianjin']Beijing

循環(huán)訪問(wèn)字典中列表的元素,也是要用dict_name[key]先訪問(wèn)字典中的值(列表)

for i in favourite_places['lin']:         print(i.title())

輸出結(jié)果:

BeijingTianjin

②訪問(wèn)字典中的值(字典中的值為列表)

注意:直接訪問(wèn)字典中的值,會(huì)以列表的形式呈現(xiàn)。

for name,place in favourite_places.items():    print(f"{name.title()}'s favourite places are {place}")

?輸出結(jié)果:

Lin's favourite places are ['beijing', 'tianjin']Jing's favourite places are ['chengdu', 'leshan']Huang's favourite places are ['shenzhen']

為了避免,要進(jìn)行循環(huán)嵌套

for names,places in favourite_places.items():  #對(duì)三個(gè)鍵值對(duì)先進(jìn)行一個(gè)大循環(huán)    print(f'{names.title()} favourite places are:') #在大循環(huán)里每一組鍵值對(duì)開(kāi)頭先打印這句話    for place in places:      #之后再對(duì)值進(jìn)行一個(gè)小循環(huán),打印出值中的每個(gè)元素        print(place.title())

輸出結(jié)果:

Lin favourite places are:BeijingTianjinJing favourite places are:ChengduLeshanHuang favourite places are:Shenzhen

3.字典中存儲(chǔ)字典

①字典中不能全部由字典元素組成,會(huì)報(bào)錯(cuò)。

p={'name':'lin','age':21}y={'name':'xue','age':20}c={p,y}print(c)
TypeError                                 Traceback (most recent call last) in       1 p={'name':'lin','age':21}      2 y={'name':'xue','age':20}----> 3 c={p,y}      4 print(c)TypeError: unhashable type: 'dict'

②字典中的值可由字典組成

users={    'a':{'name':'lin','age':21},    'b':{'name':'xue','age':20}}print('-----------直接訪問(wèn)輸出-------------------')print(users['a']['name'],users['a']['age'])print(users['b']['name'],users['b']['age'])print('/n-----------循環(huán)嵌套的方法輸出-------------------')for username,userinfo in users.items():    print('/n'+username+':')    for name,age in userinfo.items():        print(name,age)

輸出結(jié)果:

-----------直接訪問(wèn)輸出-------------------lin 21xue 20-----------循環(huán)嵌套的方法輸出-------------------a:name linage 21b:name xueage 20

4.容易出的小錯(cuò)誤:

①訪問(wèn)順序:

可以用dict_name[key]? /? dict_name.get(key)訪問(wèn)字典的值,也可以用列表索引list_name[索引]訪問(wèn)列表的值。但是要注意哪個(gè)在外,哪個(gè)在內(nèi),先訪問(wèn)外層,再訪問(wèn)內(nèi)層,直接訪問(wèn)內(nèi)層的會(huì)出錯(cuò)。

②字典的值為列表,訪問(wèn)的結(jié)果是輸出整個(gè)列表

需要嵌套循環(huán)遍歷里面的鍵值對(duì)。

③字典中不能全部由字典元素組成

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/123373.html

相關(guān)文章

  • python基礎(chǔ)教程:序列化

    摘要:默認(rèn)情況下,它也是不安全的,如果數(shù)據(jù)是由黑客精心設(shè)計(jì)的,則反序列化的數(shù)據(jù)可能被植入惡意代碼??偨Y(jié)為我們提供了數(shù)據(jù)序列化的工具。如果是自己內(nèi)部使用,可以作為一個(gè)選擇進(jìn)行復(fù)雜對(duì)象的序列化。 上一節(jié)我們學(xué)習(xí)了文件的讀寫(xiě),把一個(gè)字符串(或字節(jié)對(duì)象)保存到磁盤(pán)是一件很容易的事情。但是在實(shí)際編程中,我們經(jīng)常需要保存結(jié)構(gòu)化數(shù)據(jù),比如復(fù)雜的字典、嵌套的列表等等,這時(shí)候就需要我們想辦法把這些結(jié)構(gòu)化數(shù)據(jù)先...

    gityuan 評(píng)論0 收藏0
  • Python 基礎(chǔ)起步 (七) 初識(shí)字典 Dictionary(絕命毒師前傳)

    摘要:大家好,我是小白,書(shū)接上回,我們目前已經(jīng)了解到了中很常見(jiàn)的一種數(shù)據(jù)類(lèi)型,也初步掌握了一些自帶的有關(guān)的方法今天為大家介紹另外一種異?;鸨臄?shù)據(jù)結(jié)構(gòu)字典,不夸張的講,基本上我們熟悉了列表和字典后有關(guān)數(shù)據(jù)結(jié)構(gòu)這里就差不多啦,實(shí)際的項(xiàng)目中應(yīng)用的最多 大家好,我是小白,書(shū)接上回,我們目前已經(jīng)了解到了Python中很常見(jiàn)的一種數(shù)據(jù)類(lèi)型:List,也初步掌握了一些Python自帶的有關(guān)List的方法...

    BaronZhang 評(píng)論0 收藏0
  • 操作之靈魂——拷貝

    摘要:原文地址首先需要搞清楚兩個(gè)概念賦值和引用,對(duì)于操作賦值操作程序先新建對(duì)象,然后將的值拷貝到中。切片操作屬于淺拷貝。 原文地址 首先需要搞清楚兩個(gè)概念:賦值和引用,對(duì)于操作 target = source: 賦值操作:程序先新建對(duì)象target,然后將source的值拷貝到target中。這里,target和source值相同,但是它們是兩個(gè)完全不同的對(duì)象。 引用操作:程序直接將tar...

    codercao 評(píng)論0 收藏0
  • Python學(xué)習(xí)之路5-字典

    摘要:本章主要介紹字典的概念,基本操作以及一些進(jìn)階操作。使用字典在中,字典是一系列鍵值對(duì)。中用花括號(hào)來(lái)表示字典。代碼定義空字典的語(yǔ)法結(jié)果如果要修改字典中的值,只需通過(guò)鍵名訪問(wèn)就行。 《Python編程:從入門(mén)到實(shí)踐》筆記。本章主要介紹字典的概念,基本操作以及一些進(jìn)階操作。 1. 使用字典(Dict) 在Python中,字典是一系列鍵值對(duì)。每個(gè)鍵都與一個(gè)值相關(guān)聯(lián),用鍵來(lái)訪問(wèn)值。Python中用...

    NicolasHe 評(píng)論0 收藏0
  • Python數(shù)據(jù)類(lèi)型分支循環(huán)

    摘要:會(huì)認(rèn)為子類(lèi)是一種父類(lèi)類(lèi)型。一般記為它是編程語(yǔ)言中表示文本的數(shù)據(jù)類(lèi)型。運(yùn)算是與運(yùn)算,只有所有都為,運(yùn)算結(jié)果才是布爾值經(jīng)常用在條件判斷中列表列表是中使用最頻繁的數(shù)據(jù)類(lèi)型。是中內(nèi)置的一種數(shù)據(jù)類(lèi)型,可以隨時(shí)添加和刪除其中的元素。 了解過(guò)了Python的發(fā)展歷史,現(xiàn)在開(kāi)始我們的Python基礎(chǔ)吧,如果你有學(xué)習(xí)過(guò)其他的編程語(yǔ)言,你可以跳過(guò)這一篇 PyCharm使用圖解 開(kāi)發(fā)python的工具你可以...

    archieyang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<