0

我正在编写一些代码来解析文本,并且在其中一个变量中,我可以有文本或整数,所以为了打印它,我执行 str:

Variable=str(input)

它工作正常,但如果输入包含特定于语言的字符:“ñ”,它将无法工作,引发以下错误:

UnicodeEncodeError: 'ascii' codec can't encode character u'\xf1' in position 9: ordinal not in range(128)

如何避免这种情况?

4

1 回答 1

3

我敦促您首先开始阅读 Unicode:

在你继续之前。

您需要使用特定编码对值进行编码 使用默认编码 ASCII,这对于您的某些值失败。unicode()str()

可以使用以下unicode.encode()方法进行显式编码:

Variable = input.encode('utf8')

但您需要选择适合您的问题域的编码。

于 2013-10-26T11:22:41.183 回答