如何在python中创建表?

时间:2018-02-09 10:37:15

标签: python

我找到了列出所有alt代码的方法,但我想把它们放在一个 table so it looks something like this

这就是我的尝试:

variable = -1
for i in range(55295):
     print("---------")
     variable = variable + 1
     print(str(variable) + "   " + chr(variable))

此代码将打印所有alt代码。 为了把它放到一张桌子里,我尝试了这个。 (它有时间延迟)

import time
variable = -1
#for i in range(55295):
for i in range(15):
     print("---------")
     variable = variable + 1
     print(" | "+ str(variable) + " |  " + chr(variable) + " | ")
     time.sleep(0.0001)
print("---------------------------------------------------")

我已经没有想法了,你能帮忙吗?

(这是我第一次在这里问一个问题。)

2 个答案:

答案 0 :(得分:0)

您可以尝试使用pyplot表方法:我修改并扩展了您的示例代码,使其看起来像:     将matplotlib.pyplot导入为plt

::::::::::Controller Login::::::::::

结果如下: png file of the table saved with matplotlib

我没有成功地在表格中显示从0开始的alt-code字符(仅在控制台中)。

答案 1 :(得分:0)

您无法在21世纪的系统上打印具有如此低代码的字符。图像中的字符是那些出现在旧MS-DOS系统上的字符(根据维基百科:Code Page 437)。但是,现代系统使用Unicode字体,32以下代码(space)是控制代码,保留用于特殊目的。例如,代码9插入一个Tab,10将文本光标放在一个新行上。

(在旧系统上也是这种情况,但你可以通过立即写入视频缓冲区来避免这种情况。现在,在大多数计算机上已不再是一种选择。)

要获得与旧字符等效的 modern ,您需要一个翻译它们的查找列表。我从链接到上面的wiki页面复制了我的。请注意,代码0000没有官方表示;我把它变成了空间。这仅适用于32以下的控制代码。有126个以上的代码也可能无法“正确”显示(如“不在古董计算机上”),但您可以在维基页面上查找它们。

要正确对齐一位和两位数字,请使用print格式。可以使用rjust and .format等功能进行对齐;但是,从C背景来看,我更喜欢文档所谓的“旧式格式化”(https://docs.python.org/3/library/stdtypes.html#old-string-formatting)。

cp437 = [0x0020, 0x263A, 0x263B, 0x2665, 0x2666, 0x2663, 0x2660, 0x2022, 0x25D8, 0x25CB,
         0x25D9, 0x2642, 0x2640, 0x266A, 0x266B, 0x263C, 0x25BA, 0x25C4, 0x2195, 0x203C,
         0x00B6, 0x00A7, 0x25AC, 0x21A8, 0x2191, 0x2193, 0x2192, 0x2190, 0x221F, 0x2194,
         0x25B2, 0x25BC]

for i in range(15):
     print("+----+-----+")
     print("| %2d |  %s  |" % (i, chr(cp437[i])))
print("+----+-----+")

这会产生下表:

+----+-----+
|  0 |     |
+----+-----+
|  1 |  ☺  |
+----+-----+
|  2 |  ☻  |
+----+-----+
|  3 |  ♥  |
+----+-----+
|  4 |  ♦  |
+----+-----+
|  5 |  ♣  |
+----+-----+
|  6 |  ♠  |
+----+-----+
|  7 |  •  |
+----+-----+
|  8 |  ◘  |
+----+-----+
|  9 |  ○  |
+----+-----+
| 10 |  ◙  |
+----+-----+
| 11 |  ♂  |
+----+-----+
| 12 |  ♀  |
+----+-----+
| 13 |  ♪  |
+----+-----+
| 14 |  ♫  |
+----+-----+