TypeError: the JSON object must be str, bytes or bytearray, not dict

2024-03-05 10:04

本文主要是介绍TypeError: the JSON object must be str, bytes or bytearray, not dict,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

参考文章:https://blog.csdn.net/yuan2019035055/article/details/124934362

Python基础系列(一)搞懂json数据解析与字典之间的关系

代码:

在这里插入图片描述
在这里插入图片描述

报错信息:

TypeError: the JSON object must be str, bytes or bytearray, not dict

C:\Users\Administrator\PycharmProjects\XUNI_TEST\venv\Scripts\python.exe C:/Users/Administrator/PycharmProjects/XUNI_TEST/venv/JSON与字典的互相转换.py
Traceback (most recent call last):File "C:/Users/Administrator/PycharmProjects/XUNI_TEST/venv/JSON与字典的互相转换.py", line 14, in <module>datadict = json.loads(data)File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\json\__init__.py", line 341, in loadsraise TypeError(f'the JSON object must be str, bytes or bytearray, '
TypeError: the JSON object must be str, bytes or bytearray, not dict
{'name': 'xiaowang', 'info': {'sex': 'female', 'age': 16, 'birth': 1225665}} <class 'dict'>

报错翻译:

类型错误:JSON对象必须是str、bytes或bytearray,而不是dict

报错原因:

误将字典当成json,将字典转化成字典(格式不对)

改正:

在这里插入图片描述

输出:

C:\Users\Administrator\PycharmProjects\XUNI_TEST\venv\Scripts\python.exe C:/Users/Administrator/PycharmProjects/XUNI_TEST/venv/JSON与字典的互相转换.py
{'name': 'xiaowang', 'info': {'sex': 'female', 'age': 16, 'birth': 1225665}} <class 'dict'>
{"name": "xiaowang", "info": {"sex": "female", "age": 16, "birth": 1225665}} <class 'str'>
{'name': 'xiaowang', 'info': {'sex': 'female', 'age': 16, 'birth': 1225665}} <class 'dict'>

知识点:

json.dumps() :将 dict 转为json格式的字符串 【标准的 Json 文件语法中是以双引号包裹字符串的】
json.loads():将json数据转成dict类型 【 json字符串→ python对象(dict)】【主要用于解码,爬虫】
json.dump():将字典数据写入 json 文件中
json.load():读取本地 Json 文件中的数据,将数据转换为 Python 的字典格式,供其他函数调用。
在这里插入图片描述

究其原因,我对JSON和Python字典的相互转化的语法不够清晰,脑子内没有相对应的转化流程图,导致“照搬照抄”书本代码,没有实际思考。因此,我要观看JSON和Python字典的相互转化的相关视频,通过自身总结,多加练习JSON和Python字典的相互转化

这篇关于TypeError: the JSON object must be str, bytes or bytearray, not dict的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/776155

相关文章

详解MySQL中JSON数据类型用法及与传统JSON字符串对比

《详解MySQL中JSON数据类型用法及与传统JSON字符串对比》MySQL从5.7版本开始引入了JSON数据类型,专门用于存储JSON格式的数据,本文将为大家简单介绍一下MySQL中JSON数据类型... 目录前言基本用法jsON数据类型 vs 传统JSON字符串1. 存储方式2. 查询方式对比3. 索引

C#解析JSON数据全攻略指南

《C#解析JSON数据全攻略指南》这篇文章主要为大家详细介绍了使用C#解析JSON数据全攻略指南,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、为什么jsON是C#开发必修课?二、四步搞定网络JSON数据1. 获取数据 - HttpClient最佳实践2. 动态解析 - 快速

Python错误AttributeError: 'NoneType' object has no attribute问题的彻底解决方法

《Python错误AttributeError:NoneTypeobjecthasnoattribute问题的彻底解决方法》在Python项目开发和调试过程中,经常会碰到这样一个异常信息... 目录问题背景与概述错误解读:AttributeError: 'NoneType' object has no at

MySQL 8 中的一个强大功能 JSON_TABLE示例详解

《MySQL8中的一个强大功能JSON_TABLE示例详解》JSON_TABLE是MySQL8中引入的一个强大功能,它允许用户将JSON数据转换为关系表格式,从而可以更方便地在SQL查询中处理J... 目录基本语法示例示例查询解释应用场景不适用场景1. ‌jsON 数据结构过于复杂或动态变化‌2. ‌性能要

Spring的RedisTemplate的json反序列泛型丢失问题解决

《Spring的RedisTemplate的json反序列泛型丢失问题解决》本文主要介绍了SpringRedisTemplate中使用JSON序列化时泛型信息丢失的问题及其提出三种解决方案,可以根据性... 目录背景解决方案方案一方案二方案三总结背景在使用RedisTemplate操作redis时我们针对

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri