gpt4 book ai didi

python - 可以用字典替换字符串吗?

转载 作者:太空狗 更新时间:2023-10-29 22:05:57 24 4
gpt4 key购买 nike

我想将所有重音字符更改为非重音字符:

 conversion_dict = {"ä": "a", "ö": "o", "ü": "u","Ä": "A", "Ö": "O", "Ü": "U",
"á": "a", "à": "a", "â": "a", "é": "e", "è": "e", "ê": "e",
"ú": "u", "ù": "u", "û": "u", "ó": "o", "ò": "o", "ô": "o",
"Á": "A", "À": "A", "Â": "A", "É": "E", "È": "E", "Ê": "E",
"Ú": "U", "Ù": "U", "Û": "U", "Ó": "O", "Ò": "O", "Ô": "O","ß": "s"}

有没有办法做类似"paragraph of text".replace([conversion_dict])这样的事情?

最佳答案

使用第三方模块的首选方法

比下面的方法更好的替代方法是使用很棒的 unidecode模块:

>>> import unidecode
>>> somestring = u"äüÊÂ"
>>> unidecode.unidecode(somestring)
'auEA'

内置的、稍微危险的方法

从您的问题推断您正在寻求规范化 unicode 字符,实际上有一种很好的内置方法可以做到这一点:

>>> somestring = u"äüÊÂ"
>>> somestring
u'\xe4\xfc\xca\xc2'
>>> import unicodedata
>>> unicodedata.normalize('NFKD', somestring).encode('ascii', 'ignore')
'auEA'

查看 unicodedata.normalize 的文档.

但是请注意,这可能存在一些问题。参见 this post以获得很好的解释和一些解决方法。

另请参阅,latin-1-to-ascii寻找替代品。

关于python - 可以用字典替换字符串吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9317954/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com