【发布时间】:2020-01-27 13:34:36
【问题描述】:
我正在尝试制作一个简单的算法,它需要一些文本并预测一些概率。在将文本作为单个单词处理的方式中,我意识到我的单词/字符具有不同的 ascii 代码,即使它们对我/我的算法的含义应该是相同的。例如,我发现了这个'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)
因为这也可以轻松去除重音符号。
【问题讨论】:
标签: python string encoding ascii data-processing