本文主要是介绍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'解决办法
查看原文: 原文地址
当我尝试运行以下代码,来练习使用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()函数返回的数据类型。
这篇关于python错误: TypeError: the JSON object must be str, bytes or bytearray, not 'dict'解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!