【发布时间】:2016-05-30 21:57:05
【问题描述】:
我的字符串是
u'3.4\xa2 / each'
'\xa2' 是“分”符号,我想这样表示。
我试过了
i= "3.4\xa2 / each"
print unicode(i, errors='replace')
在结果中,分号显示为实心圆圈内的问号。
我也试过
i= "3.4\xa2 / each"
print i.encode('utf-8')
我明白了
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa2 in position 3: ordinal not in range(128)
那么正确的方法是什么?
【问题讨论】:
-
您使用的是什么操作系统?在 Ubuntu 14.04 上,
print u'3.4\xa2 / each'正确显示3.4¢ / each/ -
@Robᵩ:啊,但是您创建了一个 unicode 字符串文字。一开始的那个小
u.. -
OP 也是如此,在问题的第 1 行。
-
啊,但不是在第二个代码sn-p中。我想知道他到底有哪个?
-
@Robᵩ;好问题,但鉴于
encode失败了,它不是 Unicode 字符串。
标签: python python-2.7 unicode