python - 将 Python 输出格式化为行

标签 python

所以,我对编程还是有点陌生​​,我正在尝试在 Python 中格式化一些数组的输出。我发现很难理解格式化的某些方面。 我有一些想要以表格格式打印的数组。

headings = ["Name", "Age", "Favourite Colour"]
names = ["Barry", "Eustace", "Clarence", "Razputin", "Harvey"]
age = [39, 83, 90, 15, 23]
favouriteColour = ["Green", "Baby Pink", "Sky Blue", "Orange", "Crimson"]

我希望输出如下所示:(其中列宽度略大于该列中的最大长度)

Name          Age        Favourite Colour
Barry         39         Green
Eustace       83         Baby Pink
Clarence      90         Sky Blue
Razputin      15         Orange
Harvey        23         Crimson

我尝试这样做:

mergeArr = [headings, name, age, favouriteColour]

但是(我认为)这不会在正确的位置打印标题?

我尝试过这个:

mergeArr = [name, age, favouriteColour] 
col_width = max(len(str(element)) for row in merge for element in row) + 2

for row in merge:
    print ("".join(str(element).ljust(col_width) for element in row))

但是这会按列而不是按行打印每个对象的数据。

感谢帮助!谢谢。

最佳答案

您可以单独打印标题(包含姓名、年龄、最喜欢的颜色的标题)。

然后你使用你拥有的代码,但是:

rows = zip(name, age, favouriteColour)
for row in rows...

您还可以查看 tabulate 包以获取格式良好的表格。

关于python - 将 Python 输出格式化为行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41968339/

相关文章:

python - 更新散点图的标记大小

python - 如何在Python中使用lxml dtd.validate函数获取xml文件的错误位置?

Python:将字节与字符串连接

python - Lexer 在 Python 中输出 "TypeError: write() argument must be str, not bytes"。我究竟做错了什么?

python - 需要至少一个 MultiFieldPanel 对象 [wagtail]

python - 我搞砸了 conda,命令在 Mac 上不起作用

python - 无法访问请求中 g 对象的属性集

python - 如何根据列值从 DataFrame 中选择行?

python - 显示警报时从窗口警报中刮取警报文本

python - 使用 python 3.4 在 pygame 中获取曲面的中心