Python的dict存汉字的有关问题
Python的dict存汉字的问题目的:有两个.txt文件A.txt和B.txt,里面的每一行都是一个汉字单词,我要把A.txt里
Python的dict存汉字的问题
目的:
有两个.txt文件A.txt和B.txt,里面的每一行都是一个汉字单词,我要把A.txt里的单词存到dict()中,然后判断B.txt中的单词是否在A中出现
问题:
首先从A.txt中读取单词后打印出来,是汉字(例如“一万”),存到dict()中之后,dict()的key打印出来就变成了'\xe4\xb8\x80\xe4\xb8\x87'(以“一万”为例),这样在判断B中单词是否在字典中的时候,总是不在
代码:
self._vocab = dict()
for word in vocab:1
self._vocab[word] = len(self._vocab)
刚学Python,很多不明白的地方,现在在处于改别人代码的阶段,请大家多帮帮忙~~ python 编码 字典
[解决办法]什么版本的python?
3.3判断key,直接用in就可以了
'str' in dict # True/False
判断值就要用in dict.values()
你的key变成 '\xe4\xb8\x80\xe4\xb8\x87',应该是open文件的时候没有加encoding='utf-8'参数
结果按逐个字节读入字符串了(相当于encoding='latins_1')
引申一个话题,注意a.txt和b.txt的编码是否相同,必要时转换编码,不然就算同是“一万”也返回False的