python专题我对json的日常操作
一前言
本篇文章将会阐述对json的日常操作,如何读取json文件,将json文件转为字典;如何将字典转为json,将字典写入文件等;
二 josn数据格式简要说明
json对于初学者可以理解是一种数据存储格式,比如像xml;json的数据储存格式是kev(键)-value(值)形式,每个key都是唯一,并且有对应唯一的value,他们用冒号形成对应关系;json对象外面使用花括号{},花括号内部是就是存储key-value;通常key是字符串,value可以是任意数据类型对象,每个键值对之间用逗号分割,;举个简单{"name":"zszxz", "type", "human"} 这个简单的json格式 key1是name,对应的value1是zszxz;key2是type,对应的value2是human;
三pyhon函数说明
| 函数名称 | 函数含义 |
|---|---|
| dump | 将字典数据写入文件为json |
| load | 从文件读取josn数据转为字典 |
| dumps | 将字典转为josn |
| loads | 将json数据转为字典 |
四 字典与json之间的类型转换
| 字典类型 | 符号 | json类型 |
|---|---|---|
| dictionary | <=> | object |
| list ,tuple | <=> | array |
| str | <=> | string |
| False | <=> | false |
| True | <=> | true |
| None | <=> | null |
| int | <=> | numeric(int) |
| float | <=> | numeric(float) |
五 函数操作实践
5.1 josn.dump
- 首先要引入 json 模块,定义一个字典数据 message;
- 然后定义存储的json文件名为
zszxz.json,知识追寻者这边有文件夹所有搞了个相对路径 - 打开一个file,使用 'w' 写入模式,并指定编码格式为'utf-8'
- 最后使用dump()方法将字典数据message写入文件,最后得到文件中的json结果
{"msg": "you are very cute"}
import json
message = {'msg':'you are very cute'}
filename = '../dirs/zszxz.json'
# 写入数据
with open(filename,'w',encoding='utf-8') as json_file:
# {"msg": "you are very cute"}
json.dump(message,json_file)
5.2 josn.load
- 引入json模块,要读取5.1节写入的json数据,文件名相同
- 打开一个文件,指定模式'r' 表示读取,指定编程格式为 'utf-8'
- 使用load()方法将json数据从文件中读取转为字典,输出结果
{'msg': 'you are very cute'}
import json
filename = '../dirs/zszxz.json'
with open(filename,'r',encoding = 'utf-8') as read_json:
content = json.load(read_json)
# {'msg': 'you are very cute'}
print(content)
5.3 json.dumps
- 引入json模块,定义字典数据message
- 使用dumps方法将字典转为josn数据
{"msg": "you are very cute"}
import json
message = {'msg':'you are very cute'}
json_data = json.dumps(message)
print(json_data)
5.4 json. loads
- 引入json模块,定义字典数据message
- 使用dumps方法将字典转为josn数据
{"msg": "you are very cute"} - 使用loads方法将json数据转为字典为
{'msg': 'you are very cute'}
import json
message = {'msg':'you are very cute'}
json_data = json.dumps(message)
# 将json对象转为字典
dic_data = json.loads(json_data)
print(dic_data)

python专题我对json的日常操作的更多相关文章
- Json概述以及python对json的相关操作
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programming Langu ...
- Json概述以及python对json的相关操作(转)
什么是json: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programm ...
- python对json的相关操作
什么是json: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programm ...
- Json概述以及python对json的相关操作《转》
什么是json: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programm ...
- [转]python对json的相关操作
json官方说明参见:http://json.org/ Python操作json的标准api库参考:http://docs.python.org/library/json.html 对简单数据类型的e ...
- 【转】python 历险记(四)— python 中常用的 json 操作
[转]python 历险记(四)— python 中常用的 json 操作 目录 引言 基础知识 什么是 JSON? JSON 的语法 JSON 对象有哪些特点? JSON 数组有哪些特点? 什么是编 ...
- python 历险记(四)— python 中常用的 json 操作
目录 引言 基础知识 什么是 JSON? JSON 的语法 JSON 对象有哪些特点? JSON 数组有哪些特点? 什么是编码和解码? 常用的 json 操作有哪些? json 操作需要什么库? 如何 ...
- 关于python 的http 日常操作
Http,互联网的基础 .net ,java(springboot),node.js,python 都能非常方便的实现http服务. 现在服务器后台跑着pytorch的模型,想着还是用python来处 ...
- Python专题——五分钟带你了解map、reduce和filter
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Python专题第6篇文章,给大家介绍的是Python当中三个非常神奇的方法:map.reduce和filter. 不知道大家看到ma ...
随机推荐
- css技巧 1200px居中容器中某个div增加横屏背景
<div class='container' style='width:1200px;margin:0 auto;'> <div style='width:200px;margin: ...
- IDEA sql自动补全/sql自动提示/sql列名提示
一.启用idea的database插件 File->Settings->Plugins 搜索Database Tools and SQL 选择Enable 启用或者勾选 二.新建Datab ...
- (超级详细版)利用ThinkPHP3.2.3+PHPExcel实现将表格数据导入到数据库
请先阅读以下步骤再到结尾下载源码 第一步:下载 thinkphp_3.2.3 和 PHPExcel_1.8.0 并解压 对应的网站分别为: http://www.thinkphp.cn/down.ht ...
- [php] 如何处理好autoload
在有了诸如apc之类的cache之后,php的autoloader成为了需要认真考虑的性能点. 参见: http://stackoverflow.com/questions/4788452/does- ...
- git checkout简介
原文: http://web.mit.edu/~thefred/MacData/afs/sipb/project/git/git-doc/git-checkout.html git checkout ...
- H3C 各类路由默认优先级
- Spring AOP 源码分析
一.准备工作 在这里我先简单记录下如何实现一个aop: AOP:[动态代理] 指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式: 1.导入aop模块:Spring AOP: ...
- 洛谷——P1012拼数字符串操作(拼接排序)
#include<bits/stdc++.h> using namespace std; bool cmp(const string &a,const string &b) ...
- SmartAssembly 使用方法
SmartAssembly加壳工具,我还真的是不太喜欢给自己的程序加壳,觉得开源才是王道,但是没办法工作需要,需要有个加壳后与加壳前的对比,好吧谁叫咱只是程序员呢. 开始埋头苦干,找了半天也没找到合适 ...
- URL参数中加号“+”丢失的问题
Java解决方法(推荐) URLEncoder.encode(urlParams,"UTF-8");