如何从 python 中的 resource_stream 加载 json 3
How to load json from resource_stream in python 3
我正在尝试将 pkg_resources
中的 resource_stream
与 json.load
结合使用,但在 python 3 中遇到了 [=] 中不存在的问题21=] 2.
当我尝试 运行 以下命令时,出现错误:
loaded_json = json.load(resource_stream(__name__, 'path/to/foo.json'))
>> TypeError: the JSON object must be str, not 'bytes'
好像在Python3中,json.load
不再支持从字节流中读取,你必须在解析它之前对其进行解码:
json_string = resource_stream(__name__, 'path/to/foo.json').read().decode()
loaded_json = json.loads(json_string)
我正在尝试将 pkg_resources
中的 resource_stream
与 json.load
结合使用,但在 python 3 中遇到了 [=] 中不存在的问题21=] 2.
当我尝试 运行 以下命令时,出现错误:
loaded_json = json.load(resource_stream(__name__, 'path/to/foo.json'))
>> TypeError: the JSON object must be str, not 'bytes'
好像在Python3中,json.load
不再支持从字节流中读取,你必须在解析它之前对其进行解码:
json_string = resource_stream(__name__, 'path/to/foo.json').read().decode()
loaded_json = json.loads(json_string)