Python字典经典例题-key,value灵活运用
一、前言
今天朋友給我發(fā)來(lái)這樣一道題,給定一個(gè)字典
d1 = {'李陽(yáng)':['音樂(lè)','讀書(shū)','跑步'],'王天薇':['美食','詩(shī)歌','旅游'],'郭曉強(qiáng)':['編程','騎行','旅游','跑步'],'文雨非':['羽毛球','跑步','音樂(lè)','詩(shī)歌'],'鄭菲菲':['美食','排球','舞蹈']}要求找出共同愛(ài)好的人,愛(ài)好作為新字典的key,姓名作為新字典的value
話不多說(shuō)直接上代碼
二、實(shí)現(xiàn)
new_dict = {} for key,value in d1.items():for i in value:new_dict[i] = [key for key,value in d1.items() if i in value] print(new_dict)簡(jiǎn)單梳理一下邏輯:
肯定是要生成一個(gè)新字典的這個(gè)不用說(shuō),遍歷字典取出當(dāng)前字典的key,value。key是我們的姓名,value是我們的興趣愛(ài)好,那么我們要將興趣愛(ài)好當(dāng)成我們新字典的key,所以我們?nèi)ケ闅vvalue,用dict[key] = value的形式生成我們的新字典。因?yàn)樽值涫强梢詭臀覀冏詣?dòng)去重的,所以在這里不用考慮去重。最主要的就是我們后面的value怎么取,可以想到,我們新字典的key對(duì)應(yīng)的value是根據(jù)原value確定的,也就是說(shuō)當(dāng)前本應(yīng)該作為value的這個(gè)key是否在原來(lái)的value里面,如果是在里面我們就把原key傳出去,成為一個(gè)新的value。也就是下面這段代碼
key for key,value in d1.items() if i in value最后的結(jié)果如下:
?成功!
三、結(jié)束語(yǔ)
python中字典、列表、字符串是經(jīng)常運(yùn)用的數(shù)據(jù)類型。大家在掌握其獨(dú)特的方法后也要靈活運(yùn)用。每天進(jìn)步一點(diǎn)點(diǎn),來(lái)和我一起學(xué)習(xí)吧。
總結(jié)
以上是生活随笔為你收集整理的Python字典经典例题-key,value灵活运用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 关于校外访问西安电子科技大学校内图书馆资
- 下一篇: Python函数和装饰器