【发布时间】:2023-04-09 19:38:01
【问题描述】:
这条线给了我一个UnicodeEncodeError
studentID = int(studentID.unicode_markup.encode('utf-8').decode('utf-8', 'ignore'))
具体的错误是这个UnicodeEncodeError: 'decimal' codec can't encode character u'\x00' in position 8: invalid decimal Unicode string
如果我将这一行改为:
studentID = int(studentID.unicode_markup.encode('utf-8'))
我收到此错误:
ValueError: invalid literal for int() with base 10: '\xc2\xa0\xc2\xa0100\xc2\xa0\xc2\xa0'
我已尝试指定不同的编码(如“ascii”),但仍然出现相同的错误。
非常感谢您的帮助。
【问题讨论】:
-
字符串已经是 unicode,为什么还要对它进行编码和解码?您需要做的就是直接传入字符串:即
int(studentID.unicode_markup)。字符串的开头和结尾有不间断的空格,但int()会自动去掉这些空格。 -
int(studentID.unicode_markup) 给我错误:UnicodeEncodeError: 'decimal' codec can't encode character u'\x00' in position 8: invalid decimal Unicode string
-
html 文档必须包含空字符。你从哪里得到这个文件?你在下载吗?如果是这样,您如何将其转换为 unicode?span>
标签: python python-2.7 unicode encoding utf-8