值为列表的字典如何格式化输出?符合Pythonic规范的实现方法
Pythonic实现排序输出的解决方案
核心实现思路
- 字典键排序:直接对
wardrobe.items()调用sorted(),默认按键的字母顺序排序 - 列表值排序:对每个服装对应的颜色列表调用
sorted()实现字母序排列 - 分类后加空行:每个服装分类的颜色输出完成后,调用无参
print()输出空行分隔
实现代码
wardrobe = {"shirt":["red","blue","white"], "jeans":["blue","black"]} for clothes, colors in sorted(wardrobe.items()): for color in sorted(colors): print(f"{color} {clothes}") # 分类输出结束后添加空行 print()
输出结果
black jeans blue jeans blue shirt red shirt white shirt
规范说明
上述写法完全符合Pythonic设计原则:
- 优先使用Python内置的
sorted()函数处理排序逻辑,无需额外自定义排序方法,代码简洁易读 - 使用f-string完成字符串格式化,是Python 3.6及以上版本官方推荐的写法,相比
format()方法可读性更高、性能更优 - 利用
print()函数默认追加换行符的特性,无参调用即可输出空行,无需手动拼接\n字符
内容的提问来源于stack exchange,提问作者koi_konneessa
相关产品推荐
相关产品推荐

