3

我有一个清单L = [u'steve', u'micheal', u'pedro\xae']

当我试图阅读它时,我得到了一个错误,我相信它与 '\xae' 有关

>>> L = [u'steve', u'micheal', u'pedro\xae']
>>>
>>> for n in L:
...     print n
...
steve
micheal
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
UnicodeEncodeError: 'ascii' codec can't encode character u'\xae' in position 5: ordinal not in range(128)
>>>

知道如何逃脱角色吗?

所需的输出,因此读数将非常简单:

L= ['steve', 'micheal', 'pedro']

谢谢!

4

1 回答 1

7

便宜的解决方案

print n.encode('ascii','backslashreplace')

或者

print n.encode('ascii','ignore')

但最好查看 Martijn Pieters 链接并修复编码......否则您可能会在程序的其他地方遇到更多问题

于 2013-04-23T22:05:30.140 回答