Python嵌套字典需求:仅对Country字段对应值进行首字母大写处理
解决方案
要实现仅对嵌套字典里的'country'字段取值做首字母大写处理,只需要在遍历内层字典时针对性处理这个字段就行。下面是修改后的完整代码:
cities = { 'rotterdam': { 'country': 'netherlands', 'population': 6000000, 'fact': 'is my home town', }, 'orlando': { 'country': 'united states', 'population': 150000000, 'fact': 'is big', }, 'berlin': { 'country': 'germany', 'population': 25000000, 'fact': 'once had a wall splitting west from east (or north from south)', }, } for city, extras in cities.items(): print("\nInfo about the city " + city.title() + ":") # 遍历每个城市的嵌套字典内容 for key, value in extras.items(): if key == 'country': # 仅对country字段的值做首字母大写处理 print(f"- {key.title()}: {value.title()}") else: # 其他字段保持原有格式输出 print(f"- {key.title()}: {value}")
代码说明
- 外层循环依旧遍历
cities的键值对,保留了你原来的城市名首字母大写逻辑(如果不需要的话,把city.title()改成city即可)。 - 内层循环遍历每个城市的详细信息时,通过
if key == 'country'判断目标字段:- 匹配到
country时,用value.title()把国家名称的每个单词首字母大写(比如'united states'会变成'United States')。 - 其他字段则直接按原格式输出,同时我把键名也用
title()处理了,让输出的格式更统一美观。
- 匹配到
内容的提问来源于stack exchange,提问作者Sea Wolf
相关产品推荐
相关产品推荐

