Python中json的用法

python 中 json的用法

  • 一、JSON 的介绍
  • 二、json和python的转换
    • 1) python 的字典或列表转换为json
    • 2) json转换为python的字典或列表

一、JSON 的介绍

Json本质上一个带有特定格式的字符串,json是一种在各个编程语言中流通的数据格式,负责不同编程语言的数据传递和交互。类似于:

  • 国际通用语言-英语
  • 中国56个民族的通用语言-普通话
    JSON的特定格式如下
    一种是
    在这里插入图片描述
    也可以是
    在这里插入图片描述
    这种列表格式的json内元素只能是字典。

二、json和python的转换

1) python 的字典或列表转换为json

# 准备一个列表,列表中每个元素都是字典,将其转换为JSON
data = [{"name":"Bob","age":20},{"name":"Alice","age":21},{"name":"Jack","age":22}]
json_str = json.dumps(data)
print(type(json_str))    
print(json_str)
# JSON 是一个特殊格式的字符串

在这里插入图片描述

# 准备一个字典,将字典转换为字符串
data = {"name":"库里","age":20,"gender":"male"}
json_str = json.dumps(data,ensure_ascii=False) # ensure_ascii = False 设置中文编码格式
print(type(json_str))   
print(json_str)

在这里插入图片描述

2) json转换为python的字典或列表

# 将JSON 字符串转换为Python数据类型[{K:v,k:v},{k:v,k:v}]
s = '[{"name":"库里","age":20,"gender":"male"},{"name":"詹姆斯","age":21,"gender":"famale"}]'
json_data = json.loads(s)
print(type(json_data))      
print(json_data)

在这里插入图片描述

# 将JSON 字符串转换为python数据类型{k:v,k:v}
s = '{"name":"库里","age":20,"gender":"male"}'
json_data = json.loads(s)
print(type(json_data))
print(json_data)

在这里插入图片描述

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

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

相关文章

rust学习

rust学习 String类型clone和copy结构体的内存分布for循环&#xff08;<font color red>important&#xff01;&#xff09;堆和栈数据结构vector panic失败就 panic: unwrap 和 expect传播错误 模式匹配忽略模式的值绑定 泛型特征Trait定义特征为类型实现特征孤儿规则使…

C#开发的OpenRA游戏之金钱系统(6)

C#开发的OpenRA游戏之金钱系统(6) 前面已经分析怎么样找到最近并且采矿车数量不超过设定值的精炼工厂,但是没有分析怎么样移动过去,也没有分析怎么样显示采矿车进行倒矿的过程,目前就来分析相关的代码,这样对于整个游戏的实现就会更加清晰,修改起来也会得心应手。 从前…

Centos安装RabbitMQ,JavaSpring发送RabbitMQ延迟延时消息,JavaSpring消费RabbitMQ消息

1&#xff0c;版本说明 erlang 和 rabbitmq 版本说明 https://www.rabbitmq.com/which-erlang.html 确认需要安装的mq版本以及对应的erlang版本。 2&#xff0c;下载安装文件 RabbitMQ下载地址&#xff1a; https://packagecloud.io/rabbitmq/rabbitmq-server Erlang下载地…

Vue、jquery和angular之间区别

aVue、jquery、angular之间区别 angular与jquery区别angular和Vue angular与jquery区别 三个版本的输入数据绑定&#xff0c;都是单页面应用。 Angular <body ng-app><input type"text" ng-model"name"><p>{{name}}</p></body…

【C++项目】高并发内存池第七讲性能分析

目录 1.测试代码2.代码介绍3.运行结结果 1.测试代码 #include"ConcurrentAlloc.h" #include"ObjectPool.h" #include"Common.h" void BenchmarkMalloc(size_t ntimes, size_t nworks, size_t rounds) {std::vector<std::thread> vthread(…

接口自动化测试要做什么?一文3个步骤带你成功学会!

先了解下接口测试流程&#xff1a; 1、需求分析 2、Api文档分析与评审 3、测试计划编写 4、用例设计与评审 5、环境搭建&#xff08;工具&#xff09; 6、执行用例 7、缺陷管理 8、测试报告 了解了接口测试的工作流程&#xff0c;那"接口自动化测试"怎么弄&#xff1…

可视化 | (三)Edward Tufted基本设计准则

文章目录 &#x1f4da;Edward Tufted基本设计准则&#x1f407;Graphical Integrity&#x1f407;Lie Factor&#x1f407;Data-Ink&#x1f407;Chart Junks &#x1f4da;其他注意事项&#x1f407;Pie Charts&#x1f407;Rainbow Colormap&#x1f407;3D charts&#x1f…

./mysqld: error while loading shared libraries: libaio.so.1: 报错处理

报错提示 [roothecs-399223 bin]# ./mysqld --initialize --usermysql --basedir/usr/local/mysql --datadir/usr/local/mysql/data ./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory解决方案&#…

基于华为云 IoT 物联网平台实现家居环境实时监控

01 智能家居环境监测 智能家居环境监测采用 Ruff 开发板作为主控&#xff0c;串口线连接温湿度传感器 DHT11 和空气质量传感器 SDS011&#xff0c;每5分钟采集一次数据&#xff0c;通过 MQTT 协议发送到华为云 IoT 物联网平台&#xff0c;并基于数据分析服务实时计算出整个家庭…

【java学习—十】异常(1)

文章目录 1. 概念1.1. 前言1.2. java中的异常 2. java运行时异常举例3. 总结 1. 概念 1.1. 前言 任何一种程序设计语言设计的程序在运行时都有可能出现错误&#xff0c;例如除数为 0 &#xff0c;数组下标越界&#xff0c;要读写的文件不存在等等。     捕获错误最理想的是…

【网络】详解http协议

目录 一、认识URLurlencode和urldecode 二、HTTP协议HTTP协议格式HTTP的方法HTTP的状态码HTTP常见Header 一、认识URL URL叫做统一资源定位符&#xff0c;也就是我们平时俗称的网址&#xff0c;是因特网的万维网服务程序上用于指定信息位置的表示方法。 urlencode和urldecode …

GPT技术的广泛使用

GPT技术的广泛使用确实引发了一些关于其潜在影响的讨论&#xff0c;包括可能导致某些职业失业以及对一些互联网公司构成竞争压力的问题。然而&#xff0c;这个问题涉及到多个方面&#xff0c;而且不容易一概而论。 潜在影响&#xff1a; 自动化任务&#xff1a; GPT等自然语言…

asp.net学生考试报名管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net学生考试报名管理系统是一套完善的web设计管理系统系统&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为vs2010&#xff0c;数据库为sqlserver2008&#xff0c;使 用c#语言开发 应用技术&#xff1a;asp…

MySQL数据库#6

Python操作mysql 在使用Python连接mysql之前我们需要先下载一个第三方的模块 pymysql的模块&#xff0c;导入后再进行操作。 操作步骤&#xff1a;1. 先连接mysql host&#xff0c;port&#xff0c;charset&#xff0c;username password 库&#xff0c;等等。 import pymysql…

面试题之JavaScript经典for循环(var let)

如果你也在面试找工作&#xff0c;那么也一定遇到过这道for循环打印结果的题&#xff0c;下面我们来探讨下 var循环 for(var i 0; i < 10; i) {setTimeout(function(){console.log(i)}); } 先把答案写出来 下面来讲一下原因&#xff1a; 划重点 ① var ②setTimeout() …

两个list中实体某个属性值相同的实体和不同的实体

说明 有两个list,分别是newList 和 oldList&#xff0c;快速取出两个 newList 中某个属性值相同的实体和不同的实体 代码 import lombok.Data; import lombok.ToString;import java.util.ArrayList; import java.util.List; import java.util.Objects; import java.util.str…

redis集群的多key原子性操作如何实现?

1、背景 在单实例redis中&#xff0c;我们知道多key原子性操作可以用lua脚本或者multi命令来实现。 比如说有一个双删场景&#xff0c;要保证原子性同时删除k1和k2。 可以用lua双删 EVAL "redis.call(del, KEYS[1]);redis.call(del, KEYS[2])" 2 k1 k2也可以用事务…

10款轻量型的嵌入式GUI库分享

LVGL LittlevGL是一个免费的开源图形库&#xff0c;提供了创建嵌入式GUI所需的一切&#xff0c;具有易于使用的图形元素、漂亮的视觉效果和低内存占用。 特点&#xff1a; 强大的构建模组 按钮、图表、列表、滑块、图像等 ​先进的图形 动画、反锯齿、半透明、平滑滚动 多样…

Elasticsearch核心技术与实战-05-elasticsearch的安装与简单配置-Windows

首先下载elasticsearch的zip包&#xff1a;下载地址 网络不通的解决方法&#xff1a;国内镜像站 es、kibana、logstash均可在华为云开元镜像站自行选择版本下载&#xff1a;下载地址 下载插件包&#xff1a; .\bin\elasticsearch-plugin install analysis-icu .\bin\elasti…

HTTPS协议:保障网络安全的加密通信协议

在当今数字化时代&#xff0c;网络安全问题备受关注。为了保护用户的隐私和数据安全&#xff0c;HTTPS协议应运而生。本文将介绍HTTPS协议的定义、工作原理以及其在网络通信中的重要性。 一、HTTPS协议的定义 HTTPS&#xff08;Hypertext Transfer Protocol Secure&#xff09;…