尝试使用string.format()将unicode字符打印到控制台

时间:2011-12-09 22:34:33

标签: python unicode string-formatting unicode-string

下面的

是相关代码段:

print '{:─^10}'.format('') # Print '─' character 10 times

我正在使用它来创建漂亮的控制台边框等。问题是,在我的py文件中使用 #coding UTF-8 运行此操作会给我: ValueError:转换规范无效

如果我在python shell中运行相同的脚本,它会吐出转义的字符:'\ xc4 \ xc4 \ xc4 \ x ...'

我不知道(在我的脚本中)如何打印' - '字符。如果因为UTF-8编码使用 print'─',它可以打印' - 字符,但由于某种原因它不会允许它 string.format()函数。

有什么建议吗?我确信这可能很容易解决,但我对python编程非常陌生。

提前致谢。

1 个答案:

答案 0 :(得分:2)

假设您使用的是Python2,则需要使用unicode(u'')字符串:

print u'{:─^10}'.format(u'')