在python中如何将内容放入表中

在python中如何将内容放入表中,python,python-3.4,python-3.5,Python,Python 3.4,Python 3.5,如何用python创建表。我是在学校里做这件事的,学校不允许我添加任何额外的插件,比如tablate或texttable和pretty table,所以你能指导我怎么做吗?谢谢你,这是为了python 3.4或python 3.5,我应该把它作为一个评论,但由于我没有足够的声誉,我将此作为一个答案发布。检查 这是基于@SOReadytoHelp的解决方案。我将其更新为Python3,并提供了一个示例 def print_table(table): col_width = [max(len

如何用python创建表。我是在学校里做这件事的,学校不允许我添加任何额外的插件,比如tablate或texttable和pretty table,所以你能指导我怎么做吗?谢谢你,这是为了python 3.4或python 3.5,我应该把它作为一个评论,但由于我没有足够的声誉,我将此作为一个答案发布。检查


这是基于@SOReadytoHelp的解决方案。我将其更新为Python3,并提供了一个示例

def print_table(table):
    col_width = [max(len(str(x)) for x in col) for col in zip(*table)]
    for line in table:
        print("| " + " | ".join("{:{}}".format(x, col_width[i])
                                for i, x in enumerate(line)) + " |")


table = [['/', 2,    3],
         ['a', '2a', '3a'],
         ['b', '2b', '3b']]

print_table(table)
哪张照片

| / |  2 |  3 |
| a | 2a | 3a |
| b | 2b | 3b |

很好,但在Python3中需要在
print
周围加括号。@hyst329感谢您指出,做了更改。@PM2Ring oops my bad,edited:)Joschua的版本带有
max(len(str(x))
更健壮一些,因为它可以处理任何类型对象的表,但您的代码不能正确处理非字符串。但这可能符合OP的要求。可能与FWIW重复,因此ReadytoHelp的代码实际上来自其链接中的公认答案,该链接由编写。但您的代码比Sven的好:)
| / |  2 |  3 |
| a | 2a | 3a |
| b | 2b | 3b |