一前言

本篇文章将会阐述对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

  1. 首先要引入 json 模块,定义一个字典数据 message;
  2. 然后定义存储的json文件名为zszxz.json ,知识追寻者这边有文件夹所有搞了个相对路径
  3. 打开一个file,使用 'w' 写入模式,并指定编码格式为'utf-8'
  4. 最后使用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

  1. 引入json模块,要读取5.1节写入的json数据,文件名相同
  2. 打开一个文件,指定模式'r' 表示读取,指定编程格式为 'utf-8'
  3. 使用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

  1. 引入json模块,定义字典数据message
  2. 使用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

  1. 引入json模块,定义字典数据message
  2. 使用dumps方法将字典转为josn数据{"msg": "you are very cute"}
  3. 使用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的日常操作的更多相关文章

  1. Json概述以及python对json的相关操作

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programming Langu ...

  2. Json概述以及python对json的相关操作(转)

    什么是json: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programm ...

  3. python对json的相关操作

    什么是json: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programm ...

  4. Json概述以及python对json的相关操作《转》

    什么是json: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programm ...

  5. [转]python对json的相关操作

    json官方说明参见:http://json.org/ Python操作json的标准api库参考:http://docs.python.org/library/json.html 对简单数据类型的e ...

  6. 【转】python 历险记(四)— python 中常用的 json 操作

    [转]python 历险记(四)— python 中常用的 json 操作 目录 引言 基础知识 什么是 JSON? JSON 的语法 JSON 对象有哪些特点? JSON 数组有哪些特点? 什么是编 ...

  7. python 历险记(四)— python 中常用的 json 操作

    目录 引言 基础知识 什么是 JSON? JSON 的语法 JSON 对象有哪些特点? JSON 数组有哪些特点? 什么是编码和解码? 常用的 json 操作有哪些? json 操作需要什么库? 如何 ...

  8. 关于python 的http 日常操作

    Http,互联网的基础 .net ,java(springboot),node.js,python 都能非常方便的实现http服务. 现在服务器后台跑着pytorch的模型,想着还是用python来处 ...

  9. Python专题——五分钟带你了解map、reduce和filter

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Python专题第6篇文章,给大家介绍的是Python当中三个非常神奇的方法:map.reduce和filter. 不知道大家看到ma ...

随机推荐

  1. html5的开发

    1.html5的开发组织者: (1)WHATWG:由Apple.Mozilla.Google.Opera等浏览器开发者组成,成立于2004年.WHATWG开发HTML和Web应用API,同时为各浏览器 ...

  2. python实用工具包

    文本处理 FlashText     大规模关键字搜索利器,据说多余500个关键字时性能会明显优于正则表达式,暂未评测! 调试利器 pysnooper     不需要使用print进行调试

  3. thinkphp3.2.3中设置路由,优化url

    需求: 访问这个目录的时候,http://xx.com/p-412313要重定向到(暂且这么叫)http://xx.com/Home/Blog/index/id/412313 就是看着好看 我的应用目 ...

  4. 怎么让FOXMAIL关了以后在右下角自动收取邮件

    1.缩小到任务栏:打开foxmail,在工具-系统设置-常规,选项中有一项最小化时在任务栏显示,勾选上即可.2.要自动收取邮件,选中邮件账户,右键打开菜单,属性-接收邮件,右边勾选上“每隔*分钟自动收 ...

  5. ubuntu snmp 安装与配置

    0.说明 关于一个完整的教程,还是那句话,国内的要么不完整,要么就太旧了,而且思路也不清晰,所以这里写一篇完整的给大家分享一下. 虽然对于Linux主机的监控可以通过执行特定的命令来完成,但是相比之后 ...

  6. cccc初赛 L3-003 长城

    L3-009. 长城 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 邓俊辉 正如我们所知,中国古代长城的建造是为了抵御外敌入侵.在长 ...

  7. 1626 - Brackets sequence——[动态规划]

    Let us define a regular brackets sequence in the following way: Empty sequence is a regular sequence ...

  8. Vue中的scoped及穿透方法(修改第三方组件局部的样式)

    何为scoped? 在vue文件中的style标签上,有一个特殊的属性:scoped.当一个style标签拥有scoped属性时,它的CSS样式就只能作用于当前的组件,也就是说,该样式只能适用于当前组 ...

  9. <QluOJ2018NewCode>约数个数

    题目描述 p^q表示p的q次方,正整数M可以分解为M=(p1^a1)*(p2^a2)*(p3^a3)*……*(pn^an)的形式,其中p1,p2……pn为质数(大于1并且只能被1和自身整除的数叫做质数 ...

  10. 2018-2-13-win10-uwp-listView-绑定前一项

    title author date CreateTime categories win10 uwp listView 绑定前一项 lindexi 2018-2-13 17:23:3 +0800 201 ...