在 Python 3 中,加载之前保存的 json,如下所示:
json.dumps(字典)
输出类似于
{"('Hello',)": 6, "('Hi',)": 5}
当我使用时
json.loads({"('Hello',)": 6, "('Hi',)": 5})
它不起作用,发生这种情况:
TypeError: the JSON object must be str, bytes or bytearray, not 'dict'
最佳答案
json.loads
将字符串作为输入并返回字典作为输出。
json.dumps
将字典作为输入并返回一个字符串作为输出。
使用 json.loads({"('Hello',)": 6, "('Hi',)": 5})
,
您正在调用 json.loads
并使用字典作为输入。
您可以按如下方式修复它(虽然我不太确定这样做的意义何在):
d1 = {"('Hello',)": 6, "('Hi',)": 5}
s1 = json.dumps(d1)
d2 = json.loads(s1)
关于python - JSON 对象必须是 str、bytes 或 bytearray,而不是 dict,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42354001/