我必须将所有拉丁字符转换为相应的英文字母。我可以使用Python来做吗?或者是否有可用的映射?
Unicode值为非unicode字符
Ramírez Sánchez
应转换为Ramirez Sanchez
。
答案 0 :(得分:6)
看起来你想要的是重音删除。你可以这样做:
def strip_accents(text):
return ''.join(char for char in
unicodedata.normalize('NFKD', text)
if unicodedata.category(char) != 'Mn')
>>> strip_accents('áéíñóúü')
'aeinouu'
>>> strip_accents('Ramírez Sánchez')
'Ramirez Sanchez'
这适用于西班牙语,但请注意,它并不总是适用于其他语言。
>>> strip_accents('ø')
'ø'