【发布时间】:2015-04-28 00:16:42
【问题描述】:
我有这个功能可以去除单词中的重音
def remove_accents(word):
return ''.join(x for x in unicodedata.normalize('NFKD', word) if x in string.ascii_letters)
但是当我运行它时,它会显示一个错误
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf3 in position 3: ordinal not in range(128)
位置3的字符是:ó
【问题讨论】:
-
适用于我,如果输入是 unicode 字符串:
remove_accents(u"foóbar")正确返回u"foobar" -
你认为这可能是因为我在使用 Mac 工作?
-
不,我也在使用 Mac。
-
当我输入一个带重音的字符时,它会显示:输入中不支持的字符
-
你是如何输入这些字符的?
标签: python unicode diacritics