Python-相同的字母但不同的字体/ascii代码/编码?

Python-相同的字母但不同的字体/ascii代码/编码?,python,string,encoding,ascii,data-processing,Python,String,Encoding,Ascii,Data Processing,我正在尝试做一个简单的算法,它需要一些文本并预测一些概率。在将文本作为单个单词处理的过程中,我意识到我的单词/字符具有不同的ascii码,即使它们对我/我的算法的意义应该相同。例如,我发现这个'are'和“是”。第一个似乎有不同的字体或类似的东西。如果我在Python中得到它们的哈希代码,则也会有所不同: hash('are') #5179570038677318294 hash('are') #-5669913536749823475 如果我检查单个ascii码: ord('a') #653

我正在尝试做一个简单的算法,它需要一些文本并预测一些概率。在将文本作为单个单词处理的过程中,我意识到我的单词/字符具有不同的ascii码,即使它们对我/我的算法的意义应该相同。例如,我发现这个
'are'
“是”
。第一个似乎有不同的字体或类似的东西。如果我在Python中得到它们的哈希代码,则也会有所不同:

hash('are') #5179570038677318294
hash('are') #-5669913536749823475
如果我检查单个ascii码:

ord('a') #65345
ord('a') #97
所以,我想知道是否有人知道这到底是为什么,当然,还有任何解决办法。我想要的理想结果是考虑<代码>。are'和
'是同一个词,这样我就可以把它们分组了。(数据存储在虚拟机中的.csv文件中)

谢谢你的帮助

编辑:

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

from unidecode import unidecode
unidecode(text)

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

您可以使用Unicode数据对字符串进行规范化。规范化

import unicodedata
ord(unicodedata.normalize('NFKC', 'a')) # 97