python:texttab中的colspan

2024-04-28 21:10:23 发布

您现在位置:Python中文网/ 问答频道 /正文

table = Texttable()
table.set_deco(Texttable.HEADER | Texttable.VLINES | Texttable.HLINES | Texttable.BORDER)
table.add_rows([ ["Name", "Age", "Nickname"],
                     ["Xavier Huon", 32, "Xav'"],
                     ["Baptiste Clement", 1, "Baby"] ])
print table.draw()

结果:

enter image description here

我怎么做这个?在

enter image description here


Tags: nameaddagetablenicknamerowsheaderdeco
1条回答
网友
1楼 · 发布于 2024-04-28 21:10:23

使用texttable没有真正好的方法。例如,它似乎不理解在一个主标题下可以有额外的分组列表。在

相反,您可以使用一些巧妙的格式来完成此操作:

>>> table = Texttable()
>>> table.set_deco(Texttable.HEADER | Texttable.VLINES | Texttable.HLINES | Texttable.BORDER)
>>> 
>>> table.add_rows([ ["Name\nfirst   |   last", "Age", "Nickname"],
...                      ["Xavier   |    Huon", 32, "Xav'"],
...                      ["Baptiste | Clement", 1, "Baby"] ])
>>> print table.draw()
+          +  -+     +
|        Name        | Age | Nickname |
|  first   |   last  |     |          |
+====================+=====+==========+
| Xavier   |    Huon | 32  | Xav'     |
+          +  -+     +
| Baptiste | Clement | 1   | Baby     |
+          +  -+     +

唯一的问题是,如果表的名称越长,则对齐firstlast名称项。但是,您可以通过一些数学运算来确定最大的名称,然后使用字符串格式将其左右对齐。我将把这作为练习留给读者(和apparently double poster)。在

相关问题 更多 >