我的输出看起来像'àéêöhello!'。我需要更改我的输出,例如'aeeohello',只需将字符à替换为这样。
答案 0 :(得分:8)
您好Ganesh请使用以下代码。
对我有用!
import unicodedata
def strip_accents(text):
try:
text = unicode(text, 'utf-8')
except NameError: # unicode is a default on python 3
pass
text = unicodedata.normalize('NFD', text)\
.encode('ascii', 'ignore')\
.decode("utf-8")
return str(text)
s = strip_accents('àéêöhello')
print s
答案 1 :(得分:4)
import unidecode
somestring = "àéêöhello"
#convert plain text to utf-8
u = unicode(somestring, "utf-8")
#convert utf-8 to normal text
print unidecode.unidecode(u)
aeeohello
答案 2 :(得分:0)
Alpesh Valaki 的回答是“最好的”,但我必须做一些调整才能让它工作。以粗体显示以了解更改。
#**I changed the import**
from unidecode import unidecode
somestring = "àéêöhello"
#convert plain text to utf-8
#**replaced unicode by unidecode**
u = unidecode(somestring, "utf-8")
#convert utf-8 to normal text
print(unidecode(u))
在此处输入代码