实际上,我想打印一个列表,如下所示,例如:
table = [["ESP","South","1000"],["ESP","North","1000"],["ESP","East","1000"],["ESP","West","1000"],["ESP","West","1000"]]
在这样的ASCII表格中:
+---+-----+----+
|ESP|South|1000|
+---+-----+----+
|ESP|North|1000|
+---+-----+----+
|ESP|East |1000|
+---+-----+----+
|ESP|West |1000|
+---+-----+----+
|ESP|West |1000|
+---+-----+----+
我的实际代码是:
table = [["ESP","South","1000"],["ESP","North","1000"],
["ESP","East","1000"],["ESP","West","1000"],["ESP","West","1000"]]
for i in table:
print("+","-"*7,"+","-"*6,"+","-"*5,"+")
print("|",i[0]," "*(len(i[0])),"|",
i[1]," "*(5-len(i[1])),"|",
i[2]," "*(4-len(i[2])),"|")
print("+","-"*7,"+","-"*6,"+","-"*5,"+")
输出为:
+ ------- + ------ + ----- +
| ESP | South | 1000 |
+ ------- + ------ + ----- +
| ESP | North | 1000 |
+ ------- + ------ + ----- +
| ESP | East | 1000 |
+ ------- + ------ + ----- +
| ESP | West | 1000 |
+ ------- + ------ + ----- +
| ESP | West | 1000 |
+ ------- + ------ + ----- +
但我发现唯一的方法是使用诸如prettytable、pprint、tablate等模块 我根本不想使用模块。我在这里所做的看起来不错,但我想对任何列表长度都这样做,因为这里我已经输入了我想要的确切值,但是如果我对另一个列表应用相同的代码,它将不适合。 如果有人知道怎么做,那将对我有很大帮助
您可以使用此示例了解如何打印表格:
印刷品:
您可以自定义它:
相关问题 更多 >
编程相关推荐