如何在Python 3.5中删除重音符号并使用unicodedata或其他解决方案获取字符串?


问题内容

我正在尝试在Google地理编码api中使用字符串。我检查了很多线程,但仍然遇到问题,我不知道如何解决。

我需要addresse1是没有任何特殊字符的字符串。例如,Addresse1是:“ 32 rue d’AthènesParis France”。

addresse1= collect.replace(' ','+').replace('\n','') 
addresse1=unicodedata.normalize('NFKD', addresse1).encode('utf-8','ignore')

在这里,我得到了一个没有任何重音符号的字符串… Ho,不,它不是字符串,而是一个字节。因此,我完成了建议并进行了解码:

addresse1=addresse1.decode('utf-8')

但是,addresse1与开始时完全相同…我该怎么办?我究竟做错了什么?还是我不了解unicode?还是有更好的解决方案?

谢谢,

斯特凡。


问题答案:

与第三方套餐: unidecode

3>> unidecode.unidecode("32 rue d'Athènes Paris France")
"32 rue d'Athenes Paris France"