python3安装json库-python库json快速入门
在本教程中,您将学习如何借助示例在Python中解析,读取和编写JSON。 此外,您将学习将JSON转换为dict并将其打印出来。
JSON简介
JSON (JavaScript Object Notation) 是一种用于表示结构化数据的流行数据格式。 常用于服务器和Web应用程序之间传输和接收数据。
在Python中,JSON以字符串形式表示。 例如:
p = "{"name": "Bob", "languages": ["Python", "Java"]}"
将JSON对象存储在文件中也很常见。
J在Python中解析JSON
使用json模块可以轻松解析包含JSON对象的JSON字符串和文件。
import json
person = "{"name": "http://china-testing.github.io/", "languages": ["English", "Fench"]}"
person_dict = json.loads(person)
# Output: {"name": "http://china-testing.github.io/", "languages": ["English", "Fench"]}
print( person_dict)
# Output: ["English", "French"]
print(person_dict["languages"])
执行结果
$ python3 test.py
{"name": "http://china-testing.github.io/", "languages": ["English", "Fench"]}
["English", "Fench"]
这里, person是JSON字符串, person_dict是字典
您可以使用json.load()方法读取包含JSON对象的文件。
假设您有名为person.json的文件,其中包含JSON对象
import json
with open("person.json") as f:
data = json.load(f)
# Output: {"languages": ["English", "Fench"], "name": "http://china-testing.github.io/"}
print(data)
我们使用open()函数来读取json文件。 然后,使用json.load()方法解析文件,该方法为我们提供了名为data的字典。
以使用json.dumps()方法将字典转换为JSON字符串。
import json
person_dict = {"name": "Bob",
"age": 12,
"children": None
}
person_json = json.dumps(person_dict)
# Output: {"name": "Bob", "age": 12, "children": null}
print(person_json)
json.dump()方法将JSON写入文件。
import json
person_dict = {"name": "Bob",
"languages": ["English", "Fench"],
"married": True,
"age": 32
}
with open("person.txt", "w") as json_file:
json.dump(person_dict, json_file)
参考资料
我们使用"w"以书写模式打开了一个名为person.txt的文件。 如果该文件尚不存在,则将创建该文件。 然后, json.dump()将person_dict转换为JSON字符串,该字符串将保存在person.txt文件中。
运行该程序时,将创建person.txt文件。 该文件中包含以下文本。
{"name": "Bob", "languages": ["English", "Fench"], "married": true, "age": 32}
要分析和调试JSON数据,我们可能需要以更易读的格式打印它。 这可以通过将其他参数indent和sort_keys给json.dumps()和json.dump()方法来完成。
import json
person_string = "{"name": "Bob", "languages": "English", "numbers": [2, 1.6, null]}"
# Getting dictionary
person_dict = json.loads(person_string)
# Pretty Printing JSON string back
print(json.dumps(person_dict, indent = 4, sort_keys=True))
运行程序时,输出将是:
{
"languages": "English",
"name": "Bob",
"numbers": [
2,
1.6,
null
]
}
在上面的程序中,我们使用了4空格来缩进。 并且,键按升序排序。缩进的默认值是None 。 并且, sort_keys的默认值为False 。
python3安装json库-python库json快速入门相关推荐
- python requests下载图片_python读取图片大小Python Requests模块快速入门
requests是python的一个HTTP客户端库,跟urllib,urllib2类似.它比 urllib 更加方便,可以节约我们大量的工作,它比 urllib 更加 Pythoner. 安装 Re ...
- python新手教程 从零开始-Python零基础从零开始学习Python十分钟快速入门
原标题:Python零基础从零开始学习Python十分钟快速入门 学习Python的,都知道Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言.Python是一种动态解释型的 ...
- 【Python零基础快速入门系列 | 03】AI数据容器底层核心之Python列表
• 这是机器未来的第7篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/124957520 <Python零基础快速入门 ...
- 【Python数据科学快速入门系列 | 06】Matplotlib数据可视化基础入门(一)
这是机器未来的第52篇文章 原文首发地址:https://robotsfutures.blog.csdn.net/article/details/126899226 <Python数据科学快速入 ...
- 【Python零基础快速入门系列 | 07】浪漫的数据容器:成双成对之字典
这是机器未来的第11篇文章 原文首发链接:https://blog.csdn.net/RobotFutures/article/details/125038890 <Python零基础快速入门系 ...
- 【Python数据科学快速入门系列 | 04】Numpy四则运算、矩阵运算和广播机制的爱恨情仇
这是机器未来的第43篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/126493989 文章目录 1. 概述 2. 四则运算 ...
- Python 股票分析快速入门
Python 股票分析快速入门 这段时间股市又开始火爆起来了,隐约这透着点大牛市气息,多年不用的股票账户也找回来了.然后就想着用python做下股票分析,尝试制作自己的分析脚本,本篇教程是自己的一些笔 ...
- Python七天快速入门——第一天
Python七天快速入门--第二天 Python七天快速入门--第三天 Python七天快速入门--第四天 上 Python七天快速入门--第四天 下 Python七天快速入门--第五天 Python ...
- python 操作 zookeeper 快速入门
python 操作 zookeeper 快速入门 文章目录 python 操作 zookeeper 快速入门 什么是zookeeper python 操作 zk 快速入门 zk节点 创建节点 查询节点 ...
最新文章
- Kafka实现细节(下)
- html页面vertical,vertical.html
- python随机生成模块的应用
- 【ZOJ - 3872】Beauty of Array(思维,计算贡献,枚举)
- webservice 实现与his系统对接_[Share] EDI 及其他常见系统对接技术
- 计算机网络硬件脆弱性,计算机网络的脆弱性有哪几点
- 微课|中学生可以这样学Python(8.4节):递归算法例题讲解3
- JavaScript的数据类型及其检测
- HDOJ 2013 蟠桃记
- 基于ssm的仓库管理系统
- qq相册回收站复原显示服务器繁忙,qq回收站照片怎么找回?3大恢复方法3分钟解决...
- 用VC进行64位编程
- 戴尔win10计算机打不开,戴尔Win10系统摄像头打不开怎么办?
- word文档中如何将软回车替换为硬回车
- 惊喜! UE4 + ftrack开源了!
- 阿里云被攻击封多久?
- win7安全模式如何打开计算机管理,Win7怎么退出安全模式 win7系统退出安全模式的方法...
- Windows10 64位 + caffe + Matlab -- cpu版本
- linux 扫描wifi
- IBM的APAR搜索入口地址
热门文章
- 基于javaweb(springboot+mybatis)网站建设服务管理系统设计和实现以及文档报告设计
- java idle 机制_HotSpot VM重量级锁降级机制的实现原理
- java获取b站动态列表地址_爬虫入门(三)爬取b站搜索页视频分析(动态页面,DBUtils存储)...
- 计算机语言wifi,Windows7WIFI热点设置器
- php授权验证系统 c,OAuth 2.0 授权码认证
- oracle11g中用asmlib配置磁盘组,ASM学习笔记_配置ASMLIB磁盘组
- java执行指定目录的class文件
- red flag linux指定域名,Red Flag Server 4.1 系统管理手册(适用桌面linux4.1) 6
- vue @click 多个事件_VUE学习记录3
- java 文件与base64_java之文件与base64字符之间的相互转换