我目前正在学习Python并遇到以下错误:
追踪(最近的呼叫最后):
中
文件" file.py",第22行,在模块for file.read()中的单词:
文件 " C:\用户\用户\应用程序数据\本地\连续\ Anaconda3 \ lib中\编码\ cp1252.py&#34 ;, 第23行,解码
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError:' charmap'编解码器不能将字节0x9d解码到位 6552:字符映射到未定义
这是我的代码:
file=open('xyz.txt')
dict={}
ignorelist=set( line.strip() for line in open('ignorelist'))
for word in file.read():
word = word.replace(".","")
word = word.replace(",","")
if word not in ignorelist:
if word not in dict:
dict[word] = 1
else:
dict[word] += 1
d=collections.Counter(dict)
for word, count in d.most_common(10):
print(word, ": ", count)
有谁知道为什么会这样?
提前感谢!
答案 0 :(得分:2)
您可以通过指定编码来尝试此更改:
file=open('xyz.txt', encoding='utf8')
(ignorelist
文件也可能需要它)