如何使用for循环生成键为名字、值为身高的Python新字典
实现代码
names = {"Pietro Gemman": [191, 80], "Joshua Gein": [180, 71], "Sally Lowe": [168, 62], "Katie Howard": [164, 56], "Lucas Hoe": [184, 62], "Anderi Stark": [176, 81], "Hannah Wu": [156, 48]} first_names = {} for full_name, person_info in names.items(): # 拆分全名取第一个词作为名 first_name = full_name.split()[0] # 取身高列表第一个元素存入新字典 first_names[first_name] = person_info[0]
逻辑说明
- 调用字典的
items()方法遍历原字典,每次循环可同时获取全名字符串和对应的[身高,体重]列表 - 使用字符串
split()方法按空格拆分全名,默认会按任意空白字符切割,返回的列表首个元素就是需要的名 - 身高存储在列表的第一个位置,取下标
0的元素赋值给新字典对应键即可
输出验证
执行print(first_names)可以得到最终结果:
{'Pietro': 191, 'Joshua': 180, 'Sally': 168, 'Katie': 164, 'Lucas': 184, 'Anderi': 176, 'Hannah': 156}
注意:如果原字典里存在名相同的人员,后遍历到的人员身高会覆盖先存入的身高值,示例数据中所有名唯一,无冲突。
内容的提问来源于stack exchange,提问作者Jasmine
相关产品推荐
相关产品推荐

