《告别Bug》|成功解决(TypeError: the JSON object must be str, bytes or bytearray, not dict)
成功解决:TypeError: the JSON object must be str, bytes or bytearray, not dict
【《告别Bug》|成功解决(TypeError: the JSON object must be str, bytes or bytearray, not dict)】前言
本文已收录于:《告别Bug》专栏
本专栏用于记录学习和工作中遇到的各种疑难Bug问题及解决思路+解决方法,包括程序安装、运行程序过程中的问题等等,订阅专栏后如遇到其他问题可私聊帮忙解决!!!
文章目录
- 报错问题
- 报错原因
- 解决方法
报错问题 我的代码:
import jsondata = https://www.it610.com/article/{"name": '小白', "age": 20}
print(data, type(data))
dic_str = json.loads(data)
print(dic_str)
报错内容:
Traceback (most recent call last):
File "E:/Python学习/2.py", line 5, in
dic_str = json.loads(data)
File "F:\Python3.8\lib\json\__init__.py", line 341, in loads
raise TypeError(f'the JSON object must be str, bytes or bytearray, '
{'name': '小白', 'age': 20}
TypeError: the JSON object must be str, bytes or bytearray, not dict
报错原因 报错内容翻译:TypeError:JSON对象必须是str、bytes或bytearray,而不是dict
报错原因:单引号的字符串不符合Json的标准格式
解决方法 解决方法:现在是一个字典,用
str
将它转换成字符串,使用replace
把单引号换成双引号代码修改:
import jsondata = https://www.it610.com/article/{"name": '小白', "age": 20}
print(data, type(data))
dic_str = json.loads(str(data).replace("'", "\""))
print(dic_str)
再次运行:
{'name': '小白', 'age': 20}
{'name': '小白', 'age': 20}
推荐阅读
- 《告别Bug》|成功解决(WARNING: There was an error checking the latest version of pip.)
- java虚拟机|java多线程 线程应用实例
- Python基础语法|Python之条件语句
- django|python 从docx文件中读取文字和图片,其中图片编码成base64格式(高中信息技术题库系统)
- Python一网打尽<排序算法;之从玩转冒泡排序开始
- Python 中的鸭子类型和猴子补丁
- HTML5|HTML5新增标签(一)
- python 包之 Pillow 图像处理教程
- # yyds干货盘点 # 手把手教你使用Python网络爬虫获取基金信息