Python字典操作:如何为已有字典的每个条目添加子字典键值对
Python字典结构转换实现方案
前置准备
你需要先准备好每个key对应的链接映射关系,示例中我们提前定义该映射表如下:
# 原始字典 orig_dict = { "Pres": "John", "King": "Henri" } # key与对应链接的映射表 link_mapping = { "Pres": "example.com", "King": "example2.com" }
实现方法
方法1:生成新字典(保留原始字典)
使用字典推导式生成全新的目标结构字典,不会修改原始字典内容,适合需要保留原始数据的场景:
target_dict = { key: { "Name": value, "link": link_mapping[key] } for key, value in orig_dict.items() }
方法2:原地修改原始字典
直接遍历原始字典修改值,不需要额外占用存储空间存储新字典,适合不需要保留原始数据的场景:
for key in orig_dict: orig_dict[key] = { "Name": orig_dict[key], "link": link_mapping[key] }
结果验证
两种方法最终得到的字典结构都符合要求,打印输出示例:
print(target_dict) # 输出: # {'Pres': {'Name': 'John', 'link': 'example.com'}, 'King': {'Name': 'Henri', 'link': 'example2.com'}}
如果你的链接不需要提前映射,可根据规则动态生成,只需替换
link_mapping[key]为对应的生成逻辑即可,比如按key名生成链接可以写成f"https://example.com/{key.lower()}"。
内容的提问来源于stack exchange,提问作者arkanjie
相关产品推荐
相关产品推荐

