Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用python以表格格式打印列表_Python_Tabular - Fatal编程技术网

用python以表格格式打印列表

用python以表格格式打印列表,python,tabular,Python,Tabular,我正在尝试将多个列表(等长)打印为一个表的列 我正在从一个.txt文件中读取数据,在代码的末尾,我有5个列表,我希望将它们打印为列分隔,但空格。假设您有一个列表列表: for L in list_of_lists: print " ".join(L) str.join(iterable)函数通过给定的字符串连接iterable的组件 因此,”.join([1,2,3])变成了“1,2,3” 如果我可能误解了这个问题,那么每个列表都应该是一列: for T in zip(list1, l

我正在尝试将多个列表(等长)打印为一个表的列


我正在从一个.txt文件中读取数据,在代码的末尾,我有5个列表,我希望将它们打印为列分隔,但空格。

假设您有一个列表列表:

for L in list_of_lists:
    print " ".join(L)
str.join(iterable)
函数通过给定的字符串连接iterable的组件

因此,
”.join([1,2,3])
变成了“1,2,3”

如果我可能误解了这个问题,那么每个
列表都应该是一列:

for T in zip(list1, list2, list3, list4, list5):
    print " ".join(T)
zip()
将给定列表合并到一个元组列表中:

>>> zip([1,2,3], [4,5,6], [7,8,9])
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

干杯

我将向您展示一个3列表模拟:

>>> l1 = ['a', 'b', 'c']
>>> l2 = ['1', '2', '3']
>>> l3 = ['x', 'y', 'z']
>>> for row in zip(l1, l2, l3):
...     print ' '.join(row)

a 1 x
b 2 y
c 3 z
\t
作为制表字符

快速示例:

In [1]: a = [['1','2'],['3','4']]
In [5]: for nested_list in a:
...:     print '\t'.join(nested_list)
...: 
1       2
3       4
你可以用我的包裹。它支持按行或列添加数据,甚至混合这两种方法。您可以插入、删除、更新任何行或列

用法 玩得开心

试试我的

注意:这个答案已经发布在这个和这个上了

我刚刚为这个做了一个图书馆,我想这真的很有帮助。它非常简单,所以我认为你应该使用它。它被称为表格It

基本用途 要使用它,请首先按照上的下载说明进行操作

然后导入它:

导入TableIt
然后制作一个列表,其中每个内部列表都是一行:

表=[
[4,3,“你好”],
[2, 1, 808890312093],
[5,“你好”,“再见”]
]
然后,您所要做的就是打印它:

TableIt.printTable(表格)
这是您得到的输出:

+--------------------------------------------+
| 4            | 3            | Hi           |
| 2            | 1            | 808890312093 |
| 5            | Hi           | Bye          |
+--------------------------------------------+
+-----------------------+
|       | a     | b     |
+-------+-------+-------+
| x     | a + x | a + b |
| z     | a + z | z + b |
+-----------------------+
字段名 如果愿意,可以使用字段名(如果不使用字段名,则不必说useFieldNames=False,因为默认情况下设置为该值)):


printTable(table,useFieldNames=True)
从中您将得到:

+--------------------------------------------+
| 4            | 3            | Hi           |
+--------------+--------------+--------------+
| 2            | 1            | 808890312093 |
| 5            | Hi           | Bye          |
+--------------------------------------------+
还有其他用途,例如,您可以这样做:

导入TableIt
myList=[
[“姓名”、“电子邮件”],
[“理查德”richard@fakeemail.com"],
[“塔莎”tash@fakeemail.com"]
]
TableIt.print(myList,useFieldNames=True)
由此:

+-----------------------------------------------+
| Name                  | Email                 |
+-----------------------+-----------------------+
| Richard               | richard@fakeemail.com |
| Tasha                 | tash@fakeemail.com    |
+-----------------------------------------------+
或者你可以:

导入TableIt
myList=[
[,“a”,“b”],
[“x”、“a+x”、“a+b”],
[“z”,“a+z”,“z+b”]
]
printTable(myList,useFieldNames=True)
从中你可以得到:

+--------------------------------------------+
| 4            | 3            | Hi           |
| 2            | 1            | 808890312093 |
| 5            | Hi           | Bye          |
+--------------------------------------------+
+-----------------------+
|       | a     | b     |
+-------+-------+-------+
| x     | a + x | a + b |
| z     | a + z | z + b |
+-----------------------+
颜色 你也可以使用颜色

通过使用颜色选项(默认设置为无)并指定RGB值,可以使用颜色

使用上面的示例:

导入TableIt
myList=[
[,“a”,“b”],
[“x”、“a+x”、“a+b”],
[“z”,“a+z”,“z+b”]
]
printTable(myList,useFieldNames=True,color=(26156171))
然后你会得到:

+--------------------------------------------+
| 4            | 3            | Hi           |
+--------------+--------------+--------------+
| 2            | 1            | 808890312093 |
| 5            | Hi           | Bye          |
+--------------------------------------------+

请注意,打印颜色可能不适合您,但它的工作原理与打印彩色文本的其他库完全相同。我已经测试过了,每一种颜色都有效。蓝色也不会像使用默认的
34m
ANSI转义序列那样乱七八糟(如果你不知道那是什么,那没关系)。不管怎么说,这一切都源于这样一个事实,即每种颜色都是RGB值,而不是系统默认值

更多信息
要了解更多信息,请查看

,他希望每个子列表都是一列,而不是一行。那么,我想我没有正确理解这个问题。虽然我仍然不知道他是什么意思,但似乎我是唯一一个理解这一点的人:/对于花哨的gui显示,您可以使用PyQt,一个QTableWidget。