Python UnicodeDecodeError:&x27;charmap';编解码器可以';t解码位置14105处的字节0x98:字符映射到<;未定义>;

Python UnicodeDecodeError:&x27;charmap';编解码器可以';t解码位置14105处的字节0x98:字符映射到<;未定义>;,python,python-3.x,Python,Python 3.x,我拿了一些书,试着数一数一个单词在那本书中出现了多少次,一切都很好,直到有一本书上我得到了这个: UnicodeDecodeError:“charmap”编解码器无法解码位置14105处的字节0x98:字符映射到Hi,是否可以发布堆栈跟踪?当您运行代码并生成异常时。屏幕上通常会显示更多的重要信息:异常是什么、在哪里引发异常等。这意味着您正在读取的文件没有按照您的计算机尝试使用的编码格式进行编码。在UTF8中,(最常见的字符之一)字符\x98是一个连续字符,这意味着它仅在后面有一个特定的第二个字符

我拿了一些书,试着数一数一个单词在那本书中出现了多少次,一切都很好,直到有一本书上我得到了这个:


UnicodeDecodeError:“charmap”编解码器无法解码位置14105处的字节0x98:字符映射到Hi,是否可以发布堆栈跟踪?当您运行代码并生成异常时。屏幕上通常会显示更多的重要信息:异常是什么、在哪里引发异常等。这意味着您正在读取的文件没有按照您的计算机尝试使用的编码格式进行编码。在UTF8中,(最常见的字符之一)字符\x98是一个连续字符,这意味着它仅在后面有一个特定的第二个字符时才有效。你需要找到文件的正确编码,或者告诉python用
open(file,errors='ignore')
忽略错误。我从[我在UTF-8[img from site][2][1]下载的所有书籍:[2]:[2]:Jonathan,谢谢你的提示
open(file,errors='ignore')
它可以工作了!
def couting_func(file, word):
#the function takes a file and cout how many times word occurs in that file
try:
    with open(file) as file_object:
        lines = file_object.read()
except FileNotFoundError:
    print("The file is missing!!!")
else: 
    words = lines.split()
    words = words.count(word)
    print(words)