Python open(';*.json';)给出;UnicodeDecodeError“;

Python open(';*.json';)给出;UnicodeDecodeError“;,python,python-3.x,unicode,python-3.8,python-unicode,Python,Python 3.x,Unicode,Python 3.8,Python Unicode,我正在尝试使用以下代码将.json文件作为字典导入: import json with open('StreamingHistory0.json') as json_file: history = json.load(json_file) 但是,我不断遇到以下错误: File "C:\Users\User\AppData\Local\Programs\Python\Python38\lib\encodings\cp1252.py", line 23, in de

我正在尝试使用以下代码将.json文件作为字典导入:

import json

with open('StreamingHistory0.json') as json_file: 
    history = json.load(json_file)
但是,我不断遇到以下错误:

File "C:\Users\User\AppData\Local\Programs\Python\Python38\lib\encodings\cp1252.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 97181: character maps to <undefined>
文件“C:\Users\User\AppData\Local\Programs\Python38\lib\encodings\cp1252.py”,第23行,解码
返回编解码器.charmap\u解码(输入、自身错误、解码表)[0]
UnicodeDecodeError:“charmap”编解码器无法解码位置97181中的字节0x81:字符映射到

此错误的原因是什么?是否有合适的修复方法?

很可能是编码错误。试一试

with open('StreamingHistory0.json', encoding='utf-8')

您是否尝试了
open('StreamingHistory0.json',encoding='utf-8')
?默认设置是否为
'utf-8'
,“重启电脑类型问题”听起来像Windows;-)说真的,似乎我弄错了,说“如果没有指定编码,那么使用的编码依赖于平台:locale.getpreferredencoding(False)”。所以在Windows上,这可能是cp1252-这似乎是OP遇到此错误的原因。