【发布时间】:2016-01-24 19:03:48
【问题描述】:
我试图在我正在编写的命令行程序中使用一些简单的 unicode 字符,但是将这些东西绘制到表格中变得很困难,因为 Python 似乎将单字符符号视为多字符串。
例如,如果我尝试print(u"\u2714".encode("utf-8")),我会看到 unicode 复选标记。但是,如果我尝试为该字符添加一些填充(就像在表格结构中可能的那样),Python 似乎将这个单字符串解释为 3 个字符的字符串。所有这三行都打印相同的内容:
print("|{:1}|".format(u"\u2714".encode("utf-8")))
print("|{:2}|".format(u"\u2714".encode("utf-8")))
print("|{:3}|".format(u"\u2714".encode("utf-8")))
现在我想我明白了为什么会发生这种情况:它是一个多字节字符串。我的问题是,如何让 Python 适当地填充这个字符串?
【问题讨论】:
-
我目前正在使用 2.7,但我们也需要支持 3。