【发布时间】:2021-07-30 03:13:59
【问题描述】:
我有一本包含许多条目的字典:
d = dict([(i, 'Data') for i in range(100)])
如果我尝试漂亮地打印这些数据
pp = PrettyPrinter(indent=4, width=999)
pp.pprint(d)
每行只打印一个条目:
{ 0: 'Data',
1: 'Data',
...
99: 'Data'}
但是,我希望它每行打印尽可能多的条目,因为它可以容纳在 width 的限制内。
类似这样的:
{ 0: 'Data', 1: 'Data', 2: 'Data',
3: 'Data', 4: 'Data', 5: 'Data',
...
99: 'Data'}
如何使用已经存在的包实现此结果?
【问题讨论】:
-
请研究漂亮的打印、打印格式和相关主题。一种简单的方法是将
join的所有输出转换为一个字符串,然后将其每行拆分,找到位置width左侧的第一个逗号空格对。 -
你介意不使用 pprint 还是必须使用它,因为我相信使用 for 循环应该不难。
-
@Prune 我不傻!我可以轻松编写一些代码来创建我想要的字符串。 pprint 和类似的软件包存在是有原因的。我想要一种简单快捷的方法,可以在任何情况下使用,而不必每次我只想打印一些东西时自己格式化字符串。我编辑了我的问题以使其更清楚。
标签: python dictionary printing pretty-print