当python输出包含非ascii字符时,我在格式化python输出时遇到了一个问题。以下面的例子为例:
>>> persons = [['Anton',12], ['Jürgen',16], ['Bernd', 18]]
>>> for i in persons:
... print '{0:10} {1:3}'.format(i[0], i[1])
...
Anton 12
Jürgen 16
Bernd 18
当然,我希望输出与第二个参数完全一致,即
^{pr2}$如何使用.format()
方法实现我想要的输出?
我怀疑我的问题与字符串长度的计算方式有关,即字符长度与字节长度
>>> len('Jürgen'.decode('utf-8'))
6
>>> len('Jürgen')
7
但是在这个例子中,我无法找到如何指定正确的字符串格式。
当我在这里输入堆栈溢出的问题时,我甚至可以看到字符串“Anton”的颜色与“Jürgen”不同,这意味着后者可能无法识别为“normal”字符串,但我应该怎么做?
使用UTF-8解码字符串,并将其格式化为Unicode:
尝试设置列表,如:
相关问题 更多 >
编程相关推荐