1
ClericPy 2020-05-19 22:34:16 +08:00
1. 参考字符串的 ljust rjust center 等方法
2. 参考字符串 format 的 < > = 字符串补齐格式 3. 参考第三方库在命令行里打印 table 4. 其他的一般也用不上... |
2
wingor2015 2020-05-20 12:36:13 +08:00
print('{:<13}'.format(a), '\t\t', 1)
print('{:<10}'.format(b), '\t\t', 2) print('{:<10}'.format(c), '\t\t', 3) |
3
TtTtTtT 2020-05-20 13:57:33 +08:00
=。=命令行的话,难。
首先,需要一个能对齐的字体。。因为数字、字母和中文文字都不是等宽的。 如果找得到等宽的话,把所有字符映射成显示长度,取最大,然后不满足长度的补足即可。 当然啦,这也很复杂,因为要是覆盖边缘 case 的话,就要对控制字符之类的逻辑进行特殊处理。 我刚才顺手看了眼 VS code 的实现,估计就是把中文文字当 2,其他当 1,因为半个省略号竟然长度算 1 。。 |
4
songdg OP @wingor2015 谢谢,不过不太行。
|