python字典和JSON格式的转换方式
作者:天下第一小白 发布时间:2022-02-01 14:27:05
python字典和JSON格式的转换
首先引入 import json
>>> d = {'s':'you','d':'are'} #给一个字典
>>> j = json.dumps(d)
>>> type(j)
str #已经转化为json字符串
>>> d1 = json.loads(j)
>>> type(d1)
dic #已经将json字符串转化为字典了
python字典和JSON格式的转换
字典键的特性
字典值可以没有限制地取任何 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。
字典的重点特性
(1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:
(2) 键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行,如下实例:
json 结构
dict1={'java':{'year':'1996','url' :'www/baidu.com','score':[20,30,40]},'python':{'year':'1994','url' :'www/baidu.com','score':[50,60,70]}}
上次简述了嵌套字典的遍历。由上例可见是字典dict1 嵌套字典{‘year’:‘1996’,‘url’ :‘www/baidu.com’,‘score’:[20,30,40]},那么如果是list 嵌套字典由会是 什么结果呢?
list_dict=[{'java':'aaa'},{'python':'bbbb'}]
list_dict1=[{'java':{'year':'1996','url' :'www/baidu.com','score':[20,30,40]},'python':{'year':'1994','url' :'www/baidu.com','score':[50,60,70]}}]
list_dict2={'java':[{'year':'1996','url' :'www/baidu.com','score':[20,30,40]},{'year':'1994','url' :'www/baidu.com','score':[50,60,70]}]}
这种数据格式又成json格式。
JSON是Java Script Object Notation的缩写,对象表示是一种以有组织且简单的方式存储信息的方式。在浏览器和服务器之间交换数据时,数据必须是文本形式。
json不是 java script。它是一个由文本组成的脚本,用于以人和机器可读的格式存储和传输数据。它是一种受JavaScript启发的小型、轻量级数据格式,通常用于文本或字符串格式。一包JSON几乎与一本Python字典相同。
Python 通过内置的JSON包,实现Python数据类型和json字符串的转换。
#**只需的引入JSON包即可使用,无需额外下载**
import json
JSON库可以从字符串或文件解析JSON。它还可以将JSON解析为Python字典或列表,反之亦然。
解析通常分两个阶段进行:
1.从JSON到Python的转换
2.从Python到JSON的转换
JSON到Python的转换:
使用 ***json.loads()***将JSON字符串转换为Python。
由实例可知JSON转换为Python的具体数据类型由json的格式类型决定,可以试试list,也可以是dict
Python到JSON的转换:
Python对象可以使用**json.dump()**转换为JSON字符串
json格式数据的应用在互联网公司较为常见,尤其是json的转换与json的解析。下次将浅谈使用python 脚本解析json的方式以及json的序列化
来源:https://blog.csdn.net/sinat_36899414/article/details/77817195


猜你喜欢
- 不知道大家有没有见过在python数组中使用...符号,因为前段时间读别人代码的时候遇到了这个符号立刻就云里雾里,于是这里特此记录一下。先来
- /* **************************************************************
- Python 中有三个非常好用的数据结构,列表,元组和字典, 元组是不可变的,列表可以保存任意类型的Python对象,并可以随意扩展没有大小
- SQL中的单记录函数1.ASCII返回与指定的字符对应的十进制数;SQL> select ascii('A') A,a
- 自我描述的语句指这样一种语句:它的内容就是对它本身的描述。(废话……)比如下面这句句子:这是一段自我描述的语句,除了标点符号外,它共包含12
- 本文实例讲述了微信小程序控制台提示warning:Now you can provide attr "wx:key" f
- pandas基于numpy,所以其中的空值nan和numpy.nan是等价的。numpy中的nan并不是空对象,其实际上是numpy.flo
- 1、检测登录状态base.pydef checkLogin(func):""" 查看session
- 今天晚上小编在加班时有朋友咨询关于SQL Server 2005 更改安装路径目录的问题,告诉了朋友,顺手又在网上找了其它几个方法,第一个方
- 惊云JS随机排序程序随机显示信息-每次新闻显示顺序都不一样<script type=text/javascript>//////
- 目的在刷算法题中经常遇到关于链表的操作,在使用go语言去操作链表时不熟悉其实现原理,目的是为了重温链表这一基础且关键的数据结构。1、链表的特
- 前言最近学习了 django 的一个 restframework 框架,对于里面的执行流程产生了兴趣,经过昨天一晚上初步搞清楚了执行流程(部
- 先看看效果:效果-点击弹出弹框 -点击复选框,已选div中 显示已选中的选项 -再次点击取消选中状态,已选div中 显示的选中选项取消显示
- 基本操作查看数据库<code>show databases;</code>指定字符集<code>crea
- 使用TensorFlow模块时,弹出错误Your CPU supports instructions that this TensorFlo
- AICodeHelper是一款AI编程助手,旨在帮助程序员提高他们的编码技能。简单的像尝试的代码直接问就行,但是一些复杂的,就得需要写技巧;
- 一、题目内容给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的
- 简介日常开发中, 测试是不能缺少的.Go 标准库中有一个叫做 testing 的测试框架, 可以用于单元测试和性能测试.它是和命令 go t
- 正在看的ORACLE教程是:ORACLE常见错误代码的分析与解决三。 -----------------------------
- 存储过程简介----------------------------------------------------------------