我正在尝试获取一个字符串以在 google geocoding api 中使用。我检查了很多线程,但我仍然面临问题,我不明白如何解决它。

我需要 addresse1 是一个没有任何特殊字符的字符串。 Addresse1 是例如:“32 rue d'Athènes Paris France”。

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

在这里,我得到了一个没有任何重音符号的字符串...呵呵不...它不是一个字符串而是一个字节。所以我已经做了建议和'解码:
addresse1=addresse1.decode('utf-8')

但是后来 addresse1 与开始时完全相同......我必须做什么?我究竟做错了什么?或者我不明白 unicode 什么?或者有更好的解决方案吗?

谢谢,

斯蒂芬。

最佳答案

使用第 3 方包: unidecode

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

关于python - 如何在 Python 3.5 中删除重音并使用 unicodedata 或其他解决方案获取字符串?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33328645/

10-12 23:24