python的json loads用法_Python json库中load、loads、dump、dumps的区别与用法
1 json.loads()
将json格式的数据转化为字典类型
data_json = '{"msg": "登录成功", "code": "10001", "data": null, "status":1}'
data_dict = json.loads(data_json, encoding="utf-8")
这个时候,如果使用 eval(data_json) 将会报错。
因为这个json格式的数据中,存在python中没有的数据类型:null。
如果没有null,eval方法是可以实现将数据转化为字典类型。
NameError: name 'null' is not defined
所以,python中要将json格式的数据转化为字典型,就用到:loads。
2 json.load()
从文件中读取json类型的数据,并转化为字典类型
data_json = '{"msg": "登录成功", "code": "10001", "data": null, "status":1}'
with open("json_file.txt", mode="r", encoding="utf-8") as file:
date_dict = json.load(file)
3 json.dumps()
将Python中特定类型进行字符串化操作,即转换为json格式的数据
注意:字典、列表等都可以进行字符串话操作,变为json格式。
如果存在中文,不使用【ensure_ascii=False】,写入文件时,中文会被编码。
Python中的None对应Json中的null。
one_dict = {"name": "菲菲", "age": 18, "money": None}
one_str = str(one_dict)
one_json = json.dumps(one_dict)
two_json = json.dumps(one_dict, ensure_ascii=False)
one_tuple = ["菲菲", 18, None]
one_str = str(one_tuple)
one_json = json.dumps(one_tuple)
two_json = json.dumps(one_tuple, ensure_ascii=False)
4 json.dump()
将字典类型转化为json字符串格式,写入到文件中
one_dict = {"name": "字典型", "age": 18, "money": None}
with open("json_file.txt", mode="a",encoding="utf-8") as file:
json.dump(one_dict, file, ensure_ascii=False)
one_tuple = ["菲菲", 18, None]
with open("json_file.txt", mode="a", encoding="utf-8") as file:
json.dump(one_tuple, file, ensure_ascii=False)
看下面示例代码以及运行结果:
indent可以美化格式。
one_dict = [{"Date": "8月17日", "Location": "图书馆", "Price": 0.00}, {"Date": "8月18日", "Location": "图书馆", "Price": None}]
with open("write_json.txt", mode="a", encoding="utf=8") as one_file:
json.dump(one_dict, one_file, ensure_ascii=False, indent=2)
总结:
loads 将json格式的数据转化为dict
dumps 将字典、列表t等类型的数据转化成json格式
load 读取json格式文件,并返回dict
dump 将字典、列表等格式的数据转化为json格式,写入文件中
试了一下,
load,loads好像是只能转化成为dict。(反序列化,流——对象)
dump,dumps可以将列表,字典数据转化为json格式。(序列化,对象——可保存或可传输格式)
单词后面有s,都是对文件操作。
python的json loads用法_Python json库中load、loads、dump、dumps的区别与用法相关推荐
- 【OpenCV图像处理入门学习教程六】基于Python的网络爬虫与OpenCV扩展库中的人脸识别算法比较
OpenCV图像处理入门学习教程系列,上一篇第五篇:基于背景差分法的视频目标运动侦测 一.网络爬虫简介(Python3) 网络爬虫,大家应该不陌生了.接下来援引一些Jack-Cui在专栏<Pyt ...
- python dump函数用法_Python中json库的load和dump函数
相信很多朋友都对python里面的json库非常熟悉,json这个东西简明易懂,还能储存数据,实在是非常方便. 我一开始使用json是从爬虫接触的,那个时候只知道json.loads和json.dum ...
- python json转换字典_Python json转字典字符方法实例解析
josn基本操作 1.导入import json 2.字典转json:json.dumps(dict,ensure_ascii=False),加,ensure_ascii=False转换之后无中文乱码 ...
- python json是什么_python json详解
在写某狗屁不通文章生成器的时候,发现有个json类型的文件看不懂. 于是先来搞懂什么是json json是一种储存数据的文件类型. 说人话,就是一种文件,能够数据 类似于DOC,excel 之类的. ...
- json中的loads和dumps的区别及用法
1.json.loads():将str转为dict类型的 通常loads会在读取文件中的数据时会用到,读取的文件中数据看上去是个字典,但实际上是个str类型的数据这个时候就会用到 2.json.dum ...
- python request返回的响应_Python爬虫库requests获取响应内容、响应状态码、响应头...
首先在程序中引入Requests模块 import requests 一.获取不同类型的响应内容 在发送请求后,服务器会返回一个响应内容,而且requests通常会自动解码响应内容 1.文本响应内容 ...
- python dataframe 列_python pandas库中DataFrame对行和列的操作实例讲解
用pandas中的DataFrame时选取行或列: import numpy as np import pandas as pd from pandas import Sereis, DataFram ...
- python属性和方法的区别_Python中几种属性访问的区别与用法详解
起步 在Python中,对于一个对象的属性访问,我们一般采用的是点(.)属性运算符进行操作.例如,有一个类实例对象foo,它有一个name属性,那便可以使用foo.name对此属性进行访问.一般而言, ...
- python海龟画图代码大全_python海龟库(turtle)中颜色的表示方法
在python海龟库中,表示颜色的方法有很多,总体来讲共分成以下两类. 1. 用字符串表示颜色 在turtle库中,我们常常用颜色所对应的英文单词来直观的表示颜色. 例如:"red" ...
最新文章
- element not visible的解决方法
- Singleton + Proxy 模式+AOP
- python是用c写的吗-python和c语言的区别是什么
- Access注入偏移爆字段
- linux 自定义安装软件,在/ usr中跟踪Linux上自定义软件安装的最佳实践?
- 1130: 零起点学算法37——求阶乘
- 【转】JVM--内存区域划分
- C++ 非类型的模板参数
- 中国工业企业数据库stata处理
- 科研 | 中英文期刊分区介绍及查询方法
- 【FPGA】QuartusII_13.1安装及破解
- 最新护网/重保网络安全应急演练方案[精华]
- 气功修炼常识之:调息、丹田呼吸、脐呼吸、体呼吸
- 获取当前 IE 地址栏中的 URL
- python处理点云数据_python将指定点云文件(asc)转换为PCD格式
- 沃尔沃旗下豪华纯电动轿跑Polestar 2全球首发
- web--拉灯泡切换黑天与白夜的精美动画
- 计算机毕业设计ssm毕业设计过程管理系统049a8系统+程序+源码+lw+远程部署
- PUTTY中永久更改字体大小
- 《Python深度学习》Chapter 2——神经网络的数学基础