我正在尝试做一个简单的算法,它需要一些文本并预测一些概率。在将文本作为单个单词处理的过程中,我意识到我的单词/字符具有不同的ascii码,即使它们对我/我的算法的意义应该相同。例如,我发现这个'are'
和'are'
。第一个似乎有不同的字体或类似的东西。如果我在Python中得到它们的哈希代码,则也会有所不同:
hash('are') #5179570038677318294
hash('are') #-5669913536749823475
如果我检查单个ascii码:
ord('a') #65345
ord('a') #97
所以,我想知道是否有人知道这到底是为什么,当然,还有任何解决办法。我想要的理想结果是考虑^ {CD1}}和^ {CD2}}作为同一个单词,这样我就可以对它们进行分组。(数据存储在虚拟机中的.csv文件中)
谢谢你的帮助
编辑:
如果这是有用的,对我来说最好的解决方案是:
from unidecode import unidecode
unidecode(text)
因为这也可以很容易地消除口音
您可以使用
unicodedata.normalize
规范化字符串:相关问题 更多 >
编程相关推荐