栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python字典经典例题-key,value灵活运用

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python字典经典例题-key,value灵活运用

一、前言

今天朋友给我发来这样一道题,给定一个字典

d1 = {'李阳':['音乐','读书','跑步'],
      '王天薇':['美食','诗歌','旅游'],
      '郭晓强':['编程','骑行','旅游','跑步'],
      '文雨非':['羽毛球','跑步','音乐','诗歌'],
      '郑菲菲':['美食','排球','舞蹈']}

要求找出共同爱好的人,爱好作为新字典的key,姓名作为新字典的value

话不多说直接上代码

二、实现
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)

简单梳理一下逻辑:

肯定是要生成一个新字典的这个不用说,遍历字典取出当前字典的key,value。key是我们的姓名,value是我们的兴趣爱好,那么我们要将兴趣爱好当成我们新字典的key,所以我们去遍历value,用dict[key] = value的形式生成我们的新字典。因为字典是可以帮我们自动去重的,所以在这里不用考虑去重。最主要的就是我们后面的value怎么取,可以想到,我们新字典的key对应的value是根据原value确定的,也就是说当前本应该作为value的这个key是否在原来的value里面,如果是在里面我们就把原key传出去,成为一个新的value。也就是下面这段代码

key for key,value in d1.items() if i in value

最后的结果如下:

 成功!

三、结束语

python中字典、列表、字符串是经常运用的数据类型。大家在掌握其独特的方法后也要灵活运用。每天进步一点点,来和我一起学习吧。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/689430.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号