python 判断两个中文字符串是否相同

我用python的结巴包得到了分词,是unicode码,然后从文件中又读取了一个中文词语,这两个词是相同的,但是做判断时,他俩不相同。

都是unicode就可以直接比较。将清除前后的空格。再用type检查他们的确都是unicode。就可以直接比较了。

从文件中直接读出的词语,通常是BYTE形式。是编码好了的。不是unicode。要DECODE一次(python2.x)才可以。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-15

我记得结巴的话你给他的也必须是某种编码的(两年了忘记了)

你可以先用type(string)判断它是哪个编码 然后再类型转换

比如

s = f.readline()
s = unicode(s.decode("utf8"), "ignore")

其中decode可能要判断一下是够需要 然后再比较。

本回答被提问者采纳
第2个回答  2014-03-15
先处理相同类型的字符串再比较,应该没问题