Python如何校验字典避免重复存储相同的主播推荐输入值
问题解决方案
修改后的可运行代码
playlist = {} # 存储结构:键为推荐的主播名,值为推荐该主播的朋友姓名 while len(playlist) < 5: name = input('Friend: ') stream = input('Which stream did they recommend? ') print(f'{name} recommended {stream}!') # 校验主播是否已经被收录 if stream in playlist: print('Someone else already recommended that.') else: playlist[stream] = name print('Playlist complete! Subscribe to:') for stream, recommender in playlist.items(): print(f'{stream}: recommended by {recommender}')
核心修改说明
- 调整了字典的存储结构:将主播名作为字典的键,推荐人作为值,既可以直接通过
in语法快速判断主播是否重复,也避免了同一个朋友推荐多个主播时旧记录被覆盖的问题 - 修正了重复校验逻辑:获取到推荐的主播后先判断是否已存在于字典键中,存在则打印指定提示语,不存在才加入字典
- 修正了最终输出的遍历顺序,和需求要求的展示格式匹配
内容的提问来源于stack exchange,提问作者PurpleHyacinth
相关产品推荐
相关产品推荐

