What should I do with UnicodeEncodeError:

What should I do with UnicodeEncodeError:

看起来这些 UnicodeEncodeError 错误中有很多,但其中 none 对我有用。

我收到这个错误:

Traceback (most recent call last):
  File "...", line 86, in <module>

  File "...", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xf8' in position 255: ordinal not in range(128)

我该怎么办?

您在 new_text 中有 已经解码 的数据。您要么混合使用 unicode 和字节字符串数据,要么只有 unicode 值。

你要求Python解码已经解码的数据,一个unicode对象。为实现此目的,Python 将首先使用默认的 ASCII 编码 编码为字节 。那些对象失败了。

要么不解码(如果您的所有数据都已解码为 unicode 个对象),要么区分需要解码的对象与已经 unicode 的对象:

[x.decode('utf-8') if isinstance(x, str) else x for x in new_text]