Python中遍历列表内字典,如何实现指定格式的输出?
问题描述
给定包含字典的列表:
a = [{"x":"--New Value","y":20},{"x":"--New Value","y":21},{"x":"--New Value","y":27}]
使用如下遍历代码时:
for i in a: print(i["x"]) print(i["y"])
得到的输出为:
--New Value 20 --New Value 21 --New Value 27
但期望输出是:
--New Value 20 21 27
解决方法
方法一:已知所有字典的x值相同
先打印一次x的内容,再遍历列表打印所有y的值:
if a: # 避免列表为空时报错 print(a[0]["x"]) for item in a: print(item["y"])
方法二:x值可能存在变化,仅打印首次出现的x
通过一个标记变量控制x的打印次数,后续仅输出y的值:
x_has_printed = False for item in a: if not x_has_printed: print(item["x"]) x_has_printed = True print(item["y"])
内容的提问来源于stack exchange,提问作者sodmzs1
相关产品推荐
相关产品推荐

