Python - 相同字母但不同 font/ascii code/encoding?

Python - Same letter but different font/ascii code/encoding?

我正在尝试制作一个简单的算法,该算法采用一些文本并预测一些概率。在将文本作为单个单词处理的方式中,我意识到我有 words/characters 具有不同的 ascii 代码,即使它们对 me/my 算法的含义应该是相同的。例如,我找到了这个 'are''are'。第一个似乎有不同的字体或类似的东西。如果我在 Python 中得到他们的哈希码也是不同的:

hash('are') #5179570038677318294
hash('are') #-5669913536749823475

如果我检查单个ascii码:

ord('a') #65345
ord('a') #97

所以,我想知道是否有人知道这是为什么,当然,还有任何解决方法。我想要的理想结果是将 'are''are' 视为同一个词,以便我可以将它们分组。 (数据存储在虚拟机中的.csv文件中)

感谢您的帮助!

编辑:

如果这有用,对我来说最好的解决方案是:

from unidecode import unidecode
unidecode(text)

因为这也可以很容易地去除口音。

您可以使用 unicodedata.normalize:

规范化字符串
import unicodedata
ord(unicodedata.normalize('NFKC', 'a')) # 97