人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

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

發(fā)布日期:2021-12-11 00:48 | 文章來(lái)源:gibhub

首先明確:

1.訪問(wèn)字典中的元素:dict_name[key] / dict_name.get(key)

2.訪問(wèn)列表中的元素:list_name[索引]

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

1.列表中存儲(chǔ)多個(gè)字典

p={'name':'lin','age':21}
y={'name':'xue','age':20}
c=[p,y]
print(c)

輸出結(jié)果:

[{'name': 'Jonh', 'age': 18}, {'name': 'Marry', 'age': 19}]

2.訪問(wèn)列表中字典的值

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 Jonh
Marry's age is 19

3.遍歷訪問(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 18
Marry'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:Jonh
age:18
name:Marry
age:19name:Jonh
age:18
name:Marry
age:19

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

1.訪問(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é)果:

Beijing
Tianjin

2.訪問(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:
Beijing
Tianjin
Jing favourite places are:
Chengdu
Leshan
Huang favourite places are:
Shenzhen

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

1.字典中不能全部由字典元素組成,會(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)
<ipython-input-46-4127ab9ea962> in <module>
1 p={'name':'lin','age':21}
2 y={'name':'xue','age':20}
----> 3 c={p,y}
4 print(c)

TypeError: unhashable type: 'dict'

2.字典中的值可由字典組成

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 21
xue 20

-----------循環(huán)嵌套的方法輸出-------------------

a:
name lin
age 21

b:
name xue
age 20

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

1.訪問(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ò)。

2.字典的值為列表,訪問(wèn)的結(jié)果是輸出整個(gè)列表 需要嵌套循環(huán)遍歷里面的鍵值對(duì)。

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

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注本站的更多內(nèi)容!

版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開(kāi)通

自選配置、實(shí)時(shí)開(kāi)通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問(wèn)服務(wù)

1對(duì)1客戶咨詢顧問(wèn)

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部