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字典的相互转化

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

局域网如何远程?

局域网远程一直是许多用户在处理远程连接需求时面临的一个难题。随着技术的不断进步&#xff0c;一种名为“天联”的组网解决方案应运而生。天联组网具有操作简单、跨平台应用、无网络要求以及独创的安全加速方案等独特优势&#xff0c;在解决各行业客户的远程连接需求方面发挥…

解决ipconfig不能使用的问题

问题所示&#xff1a;ipconfig不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。 解决办法如下: 1.右击此电脑&#xff0c;点击属性设置&#xff1a; 2.点击高级系统设置 3.点击进入环境变量 4.在系统变量中进行设置&#xff0c;双击PATH进行配置 5.点击新建&am…

【如何在Docker中,修改已经挂载的卷(Volume)】

曾梦想执剑走天涯&#xff0c;我是程序猿【AK】 提示&#xff1a;添加投票&#xff01;&#xff01;&#xff01; 目录 简述概要知识图谱 简述概要 如何在Docker中&#xff0c;修改已经挂载的卷&#xff08;Volume&#xff09; 知识图谱 在Docker中&#xff0c;修改已经挂载…

matlab 提取分割位于多边形区域边缘内部或边缘上的点

[in,on] = inpolygon(xq,yq,xv,yv) xv 和 yv 为定义的多边形区域的,如xv = [1 4 4 1 1 ];yv = [1 1 4 4 1 ];注意最后一个数字与第一个重复,保证多边形闭合; xq 和 yq 为待查询的点in:在多边形内部和边缘的点序号on:仅在多边形边缘的点序号 提取分割方法: matrix=[xq yq…

智能汽车加速车规级存储应用DS2431P+TR 汽车级EEPROM 存储器IC

DS2431PT&R是一款1024位1-Wire EEPROM芯片&#xff0c;由四页存储区组成&#xff0c;每页256位。数据先被写入一个8字节暂存器中&#xff0c;经校验后复制到EEPROM存储器。该器件的特点是&#xff0c;四页存储区相互独立&#xff0c;可以单独进行写保护或进入EPROM仿真模式…

折线图实现柱状阴影背景的demo

这个是一个由官网的基础折线图实现的流程&#xff0c;将涉及到的知识点附上个人浅薄的见解&#xff0c;源码在最后&#xff0c;需要的可自取。 折线图 成果展示代码注解参数backgroundColordataZoomlegendtitlexAxisyAxisgridseries 源码 成果展示 官网的基础折线图&#xff…

【Python】OpenCV-使用ResNet50进行图像分类

使用ResNet50进行图像分类 如何使用ResNet50模型对图像进行分类。 import os import cv2 import numpy as np from tensorflow.keras.applications.resnet50 import ResNet50, preprocess_input, decode_predictions from tensorflow.keras.preprocessing import image# 设置…

计算机网络物理层知识点总结

本篇博客是基于谢希仁编写的《计算机网络》和王道考研视频总结出来的知识点&#xff0c;本篇总结的主要知识点是第二章的物理层。上一章的传送门&#xff1a;计算机网络体系结构-CSDN博客 通信基础 物理层概念 物理层解决如何在连接各种计算机的传输媒体上传输数据比特流&am…

leetcode刷题日记-K个一组翻转(链表)

题目描述 解题思路 第一种解法&#xff0c;也是我们常用的一种解题方法&#xff0c;首先遍历一遍列表&#xff0c;将列表中的val的值存放到数组中&#xff0c;然后按照要求对数组进行排序&#xff0c;排序之后&#xff0c;我们重新定义节点&#xff0c;将节点按照排完序的结果…

如何远程连接MySQL数据库?

在现代互联网时代&#xff0c;远程连接MySQL数据库成为了许多开发者和管理员必备的技能。这不仅方便了数据的共享和管理&#xff0c;还可以使多个团队在全球范围内协同工作。本文将介绍如何通过天联组网实现远程连接MySQL数据库&#xff0c;并实现高效的信息远程通信。 天联组网…

力扣hot100:1.两数之和

输入中可能存在重复值 。 分析&#xff1a; 本题需要返回的是数组下标&#xff0c;因此如果需要使用排序然后双指针的话&#xff0c;需要用到哈希表&#xff0c;但是由于输入中可能存在重复值&#xff0c;因此哈希表的value值必须是vector<int>。 使用双指针求目标值targ…

OpenDDS 跨主机通信配置与实现(C++和Java)

目录 1、编写一个示例1.1、IDL接口定义1.2、MPC文件介绍1.3、生成解决方案 2、通讯测试2.1、使用repo server 通讯2.2、使用repo ipport方式2.3、对等发现face 1、编写一个示例 1.1、IDL接口定义 假设我们现在有以下结构&#xff1a; struct MessagerOne { int subject_id; …

CMU 10-414/714: Deep Learning Systems --hw0

hw0 宏观上的步骤: softmax loss: 实现softmax loss代码 概念 softmax就是将结果映射到0~1之间,且所有结果相加为1(概率形式)cross-entropy loss就是计算 p ( x ) log ⁡ q ( x ) p(x)\log {q(x)} p(x)logq(x),此值可用于衡量实际输出与期望输出的距离,进而衡量预测模…

各种排序算法

文章目录 1. 基于比较排序算法总结2. 非比较排序算法 1. 基于比较排序算法总结 2. 非比较排序算法

路由器端口映射如何配置?

在网络通信中&#xff0c;路由器是一个重要的设备&#xff0c;它负责将数据包从一个网络传输到另一个网络。路由器的端口映射配置是一种重要的设置&#xff0c;可以使外部网络中的计算机通过访问路由器上的特定端口与内部网络中的计算机进行通信。本文将介绍什么是路由器端口映…

LabVIEW石油钻机提升系统数字孪生技术

LabVIEW石油钻机提升系统数字孪生技术 随着数字化、信息化、智能化的发展&#xff0c;石油钻采过程中的石油钻机数字化技术提升成为了提高钻井效率、降低生产成本的重要途径。基于中石油云平台提供的数据&#xff0c;采用数字孪生技术&#xff0c;对石油钻机提升系统进行数字化…

electron+vue3全家桶+vite项目搭建【29】封装窗口工具类【3】控制窗口定向移动

文章目录 引入实现效果思路声明通用的定位对象主进程模块渲染进程测试效果 引入 demo项目地址 窗口工具类系列文章&#xff1a; 封装窗口工具类【1】雏形 封装窗口工具类【2】窗口组&#xff0c;维护窗口关系 封装窗口工具类【3】控制窗口定向移动 很多时候&#xff0c;我们想…

C语言--- qsort函数

目录 一.qsort函数 1.qsort函数的功能 2.四个参数讲解 (1)base (2)num (3)size (4)compare 3.使用qsort函数对一个整形数组进行排序 4.qsort函数排序结构体数据 第一种&#xff1a;按照年龄进行比较 第二种&#xff1a;按照名字进行排序 二.利用冒泡排序模仿qsort函…

嵌入式驱动学习第二周——Linux内核打印

前言 这篇博客来聊一聊Linux内核打印。 嵌入式驱动学习专栏将详细记录博主学习驱动的详细过程&#xff0c;未来预计四个月将高强度更新本专栏&#xff0c;喜欢的可以关注本博主并订阅本专栏&#xff0c;一起讨论一起学习。现在关注就是老粉啦&#xff01; 目录 前言1. dmesg指令…

#QT(串口助手-实现)

1.IDE&#xff1a;QTCreator 2.实验 3.记录 &#xff08;1&#xff09;在widget.h中加入必要文件&#xff0c;并且定义一个类指针 &#xff08;2&#xff09;如果有类的成员不知道怎么写&#xff0c;可以通过以下途径搜索 &#xff08;2&#xff09;设置串口数据 void Widget…