一前言

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

    1-基本概念 显存带宽     是指显示芯片与显存之间的数据传输速率,它以字节/秒为单位.显存带宽是决定显卡性能和速度最重要的因素之一. 2-常见GPU性能参数 GPU型号 单卡显存 cuda 计算能 ...

  2. keras 保存模型和加载模型

    import numpy as npnp.random.seed(1337) # for reproducibility from keras.models import Sequentialfrom ...

  3. 【原生JS】简单取随机数

    因为js本身取随机数仅能取 0 到 1之间的数,所以..... 取 1 - 10之间的随机数. function getSJS(x,y,z){ var int = null; while(int &g ...

  4. 移动端Chrome Inspect调试 (Android通过Chrome Inspect调试WebView的H5)(ios手机safari,chrome调试 windows)(如果inspect的时候,是空白)

    ios +chrome调试 引用https://segmentfault.com/a/1190000015428430 iTunes ios-webkit-debug-proxy-1.8-win64- ...

  5. H3C NAT组网和常用术语

  6. linux如何查看nginx是否启动

    Nginx是一个高性能的反向代理服务器,现在一般作为我们网站或其他Web服务的第一层代理,用户在浏览器请求首先经过的就是Nginx服务. 如果Nginx服务没有启动或异常结束,将会影响Web服务的正常 ...

  7. Spring Cloud探路(一) Erueka服务器的建立

    组件名:Netflix Eureka  作用:支撑微服务的自注册.自发现,提供负载均衡能力 开发环境使用IDEA 1.新建Eureka Server,新建maven项目,配置pom.xml <p ...

  8. url查找参数

    function GetUrlParam(paraName) { var url = document.location.toString(); var arrObj = url.split(&quo ...

  9. Linux 内核bin+attribute 结构二进制属性

    sysfs 惯例调用所有属性来包含一个单个的人可读文本格式的值. 就是说, 只是偶然地很 少需要来创建能够处理大量二进制数据的属性. 这个需要真正地只出现在必须传递数据, 不可动地, 在用户空间和设备 ...

  10. C#面试题整理(带答案)

    1.维护数据库的完整性.一致性.你喜欢用触发器还是自写业务逻辑?为什么? 答:尽可能用约束(包括CHECK.主键.唯一键.外键.非空字段)实现,这种方式的效率最好:其次用触发器,这种方式可以保证无论何 ...