当前位置: 代码迷 >> 综合 >> python错误: TypeError: the JSON object must be str, bytes or bytearray, not 'dict'解决办法
  详细解决方案

python错误: TypeError: the JSON object must be str, bytes or bytearray, not 'dict'解决办法

热度:17   发布时间:2024-01-04 10:03:44.0

本文参考自python错误: TypeError: the JSON object must be str, bytes or bytearray, not 'dict'解决办法

查看原文: 原文地址

当我尝试运行以下代码,来练习使用json.loads()和json.dumps()函数时,系统给我报出了这个错误。

import json
text = {"a":1,"b":2,"c":3}
j = json.loads(text)
print(j)
Traceback (most recent call last):File "test.py", line 5, in <module>j = json.loads(text)File "C:\Users\Reborn\AppData\Local\Programs\Python\Python36-32\lib\json\__init__.py", line 348, in loads'not {!r}'.format(s.__class__.__name__))
TypeError: the JSON object must be str, bytes or bytearray, not 'dict'

其实解决办法很简单,由于text现在是一个字典,只需要用'''符号将它转换成字符串就可以了。但我们有必要知道loads()和jumps()这两个函数的具体用法,接下来我就简单说一下。

loads()

loads(param)是将文本字符串转换为json对象的函数,其函数名是load string 的缩写,意思是加载字符串。所以其参数param必须要是一个字典型的字符串。且字典的键必须用双引号来包裹。

dumps()

dumps(param)是将json数据对象转换为文本字符串的函数,其函数名是dump string 的缩写,意思是输出字符串,所以其参数param必须要是json对象,也就是loads()函数返回的数据类型。

  相关解决方案