代码之家  ›  专栏  ›  技术社区  ›  dzitrus

在python中读取文件时出现回溯错误

  •  0
  • dzitrus  · 技术社区  · 7 年前

    回溯(最近一次呼叫最后一次):
    模块中第22行的文件“File.py”

    对于文件中的word。读取():

    “C:\Users\user\AppData\Local\Continuum\Anaconda3\lib\encodings\cp1252.py”, 第23行,解码中

    UnicodeDecodeError:“charmap”编解码器无法在适当位置解码字节0x9d

    这是我的代码:

    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)
    

    有人知道为什么会这样吗?

    1 回复  |  直到 7 年前
        1
  •  2
  •   PRMoureu    7 年前

    您可以通过指定编码来尝试此更改吗:

    file=open('xyz.txt', encoding='utf8')
    

    ignorelist 文件可能也需要)