如何将数据表示到表中 - python

时间:2018-03-09 15:56:53

标签: python tabular

我试图使用表格以漂亮的格式显示我的数据,所有其他谷歌搜索让我对复杂的解决方案感到困惑,我想知道是否有更简单的方法。我正在使用此代码:

print("no. of cities | Depth-first | Breadth-first | Greedy Search")
for num in n:
    ...
    print("%d | %d | %d | %d | %d" %(n,depth_count,breadth_count,greedy_count, total))

这给了我结果:

no. of cities | Depth-first | Breadth-first | Greedy Search | Total
5 | 24 | 24 | 10 | 58
6 | 120 | 120 | 15 | 255
...

但我想:

no. of cities | Depth-first | Breadth-first | Greedy Search | Total
5             | 24          | 24            | 10            | 58
6             | 120         | 120           | 15            | 255
...

任何帮助表示感谢。

2 个答案:

答案 0 :(得分:0)

看看Pandas。使用数据框,您可以通过这种方式可视化数据。

答案 1 :(得分:0)

this post有一些好的答案,但如果你想要一些简单的东西,可以使用fixed-width formatting。例如:

n,depth_count,breadth_count,greedy_count, total = 5, 24, 24, 10, 58
header = ('no. of cities', 'Depth-first', 'Breadth-first', 'Greedy Search', 'Total')
print("%15s|%15s|%15s|%15s|%15s" % header)
print("%15d|%15d|%15d|%15d|%15d" %(n,depth_count,breadth_count,greedy_count, total))

#  no. of cities|    Depth-first|  Breadth-first|  Greedy Search|          Total
#              5|             24|             24|             10|             58

此处%15d表示使用长度为15的字符串打印右对齐的整数。

如果您想要左对齐打印,可以使用%-15

print("%-15s|%-15s|%-15s|%-15s|%-15s" % header)
print("%-15d|%-15d|%-15d|%-15d|%-15d" %(n,depth_count,breadth_count,greedy_count, total))
#no. of cities  |Depth-first    |Breadth-first  |Greedy Search  |Total          
#5              |24             |24             |10             |58