在python中用数据创建表

时间:2016-02-16 11:20:53

标签: python list python-3.x

我希望创建一个包含4列的表。

在我的程序中,我已经形成了一个包含这些信息的列表。 我可以将数据拆分为4个块(对于每一行),或者为每个列创建一个单独的列表。

是否可以在python程序中创建一个包含这些值的表,或者我是否需要先导出数据?

编辑:对于Fauxpas

Column 1                Column 2                Column 3                Column 4            

              10                      10                      10                      30

              20                      10                      10                      40

              20                      20                      10                      50

1 个答案:

答案 0 :(得分:1)

如果您正在寻找基于此文本的文本,则可以使用.format方法,阅读文档以了解格式设置,以便指定每列的间距

your_list = ['bread', 'milk', 'sugar', 'tea']

print("{0:20}    {1:20}    {2:20}    {3:20}\n".format('Column 1', 'Column 2', 'Column 3', 'Column 4'))
print("{0:20}    {1:20}    {2:20}    {3:20}\n".format(your_list[0], your_list[1], your_list[2], your_list[3]))

返回:

Column 1                Column 2                Column 3                Column 4            

bread                   milk                    sugar                   tea   

使用for循环示例越来越接近您可能想要做的事情:

your_list = ['bread', 'milk', 'sugar', 'tea', 'eggs', 'shampoo', 'clothes', 'tiger', 'beads', 'washing machine', 'juice', 'mixed herbs']

print("{0:20}    {1:20}    {2:20}    {3:20}\n".format('Column 1', 'Column 2', 'Column 3', 'Column 4'))
i = 0
for x in range(0, 3):
    print("{0:20}    {1:20}    {2:20}    {3:20}\n".format(your_list[i], your_list[i + 1], your_list[i + 2], your_list[i + 3]))
    i += 4

输出:

Column 1                Column 2                Column 3                Column 4            

bread                   milk                    sugar                   tea                 

eggs                    shampoo                 clothes                 tiger               

beads                   washing machine         juice                   mixed herbs    

编辑:

your_list = ['10', 10, '20', 20]
print("{0:20}    {1:20}    {2:20}    {3:20}\n".format('Column 1', 'Column 2', 'Column 3', 'Column 4'))
print("{0:20}    {1:20}    {2:20}    {3:20}\n".format(your_list[0], your_list[1], your_list[2], str(your_list[3])))

输出:

Column 1                Column 2                Column 3                Column 4            

10                                        10    20                      20      

如果使用Str()方法将列表中的整数转换为格式化语句中最后一个元素所演示的字符串,则不会发生这种情况:)

str(your_list[3])

https://docs.python.org/2/library/string.html