一、 基础语法

在Python 的 json库中,共有四个方法。分别是:

json.load() # 从文件中加载
json.loads() # 数据中加载
json.dump() # 转存到文件
json.dumps() # 转存到数据对象

二、举例

以下所以例子,都以这个字典为例。

d1 = {
'en':'英语',
'cn':'中文',
'fr':'法语',
'jp':'日语'
}

2.1 对象之间的转化

把这个dict转换为 json 对象:

j1 = json.dumps(d1) # dict 变 json
print('j1',j1)

输出结果是:j1 {"en": "\u82f1\u8bed", "cn": "\u4e2d\u6587", "fr": "\u6cd5\u8bed", "jp": "\u65e5\u8bed"}

把j1这个json对象,变为dict对象

d2 = json.loads(j1) # json 变 dict
print('d2',d2)

输出结果是:d2 {'en': '英语', 'cn': '中文', 'fr': '法语', 'jp': '日语'}

2.2 json文件和数据对象

with open('test.json','w+') as f:
json.dump(d1, f)

这段代码,把d1这个字典类型的对象,存到了当前目录的test.json文件中。

test.json中的内容:

这样就把dict导出到文件,以json方式存储。

读取到内存中的字典运行以下代码:

with open('test.json','r+') as f:
d3 = json.load(f)
print('d3',d3)

输出的结果是:

d3 {'en': '英语', 'cn': '中文', 'fr': '法语', 'jp': '日语'}

三、完整代码

import json
d1 = {
'en':'英语',
'cn':'中文',
'fr':'法语',
'jp':'日语'
}
print('d1',d1)
j1 = json.dumps(d1) # dict 变 json
print('j1',j1)
d2 = json.loads(j1) # json 变 dict
print('d2',d2) with open('test.json','w+') as f:
json.dump(d1, f) with open('test.json','r+') as f:
d3 = json.load(f)
print('d3',d3)

Python 中 JSON和dict的转换,json的使用的更多相关文章

  1. Python中xml和dict格式转换

    在做接口自动化的时候,请求数据之前都是JSON格式的,Python有自带的包来解决.最近在做APP的接口,遇到XML格式的请求数据,费了很大劲来解决,解决方式是:接口文档拿到的是XML,在线转化为js ...

  2. JSON转换类(二)--List转换成Json、对象集合转换Json等

    #region List转换成Json /// <summary> /// List转换成Json /// </summary> public static string Li ...

  3. List转换成Json、对象集合转换Json等

    #region List转换成Json /// <summary> /// List转换成Json /// </summary> public static string Li ...

  4. 字符串json转换为xml xml转换json

    原文:字符串json转换为xml xml转换json // To convert an XML node contained in string xml into a JSON string XmlD ...

  5. python中json与dict之间转换

    Python之dict(或对象)与json之间的互相转化 在Python语言中,json数据与dict字典以及对象之间的转化,是必不可少的操作. 在Python中自带json库.通过import js ...

  6. Python中的序列化以及pickle和json模块介绍

    Python中的序列化指的是在程序运行期间,变量都是在内存中保存着的,如果我们想保留一些运行中的变量值,就可以使用序列化操作把变量内容从内存保存到磁盘中,在Python中这个操作叫pickling,等 ...

  7. json在php中的使用之如何转换json为数组

    <?php $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}' ...

  8. Python中如何将数据存储为json格式的文件

    一.基于json模块的存储.读取数据 names_writer.py import json names = ['joker','joe','nacy','timi'] filename='names ...

  9. python中的字典(dict),列表(list),元组(tuple)

    一,List:列表 python内置的一种数据类型是列表:list.list是一种有序的数据集合,可以随意的添加和删除其中的数据.比如列出班里所有的同学的名字,列出所有工厂员工的工号等都是可以用到列表 ...

随机推荐

  1. js模式-观察者模式

    // 主题,接收状态变化,触发每个观察者 class Subject { constructor() { this.state = 0 this.observers = [] } getState() ...

  2. Promise 练习

    import { ModelClass } from "engine/injector/Injector"; import { Inject } from "core/i ...

  3. POJ 2771 最大点独立集

    这是经典的最大点独立集 还是可以转化成最大匹配数,为什么呢,因为求出最大匹配数之和,匹配的边的两个端点互斥,只能去一个,所以最后结果就用总点数-最大匹配数即可 #include <iostrea ...

  4. OpenResty从入门到开发一个网关服务(使用etcd作为注册中心)

    简介 OpenResty(也称为 ngx_openresty)是一个全功能的 Web 应用服务器.它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. 通过揉和众多设计良 ...

  5. Windows桌面图标不见了,可能是结束了explorer.exe进程导致

    Windows桌面图标不见了,怎么办?那么可能是你关掉了explorer.exe的进程. 解决办法: ① Ctrl+shift+delete打开任务管理器,查看进程是否有explorer.exe ② ...

  6. springboot-jar

    预览 1.pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&quo ...

  7. 2020/2/6 PHP编程学习

    今天把后台数据库处理好了,用了框架后真就是搬砖的一天..晚上继续刷题,明天把数据库处理完,这样一个商城框架就有了:

  8. part11 Vue项目接口联调//真机测试

    何为项目接口联调? 前端代码编译好了  后端接口写好了 我们就需要去掉前端模拟数据干掉 用后端提供的数据.进行前后端的一个调试 如何联调? config目录下面 index.js 文件 dev 中pr ...

  9. 建立更可靠的OOP程序-类和成员的访问控制

    1. public 成员(公共成员) (1)使用this 关键字的类的成员允许在任何地方被访问. (2)使用 prototype 定义的属性和方法都是公共成员. 这些属性和方法可以在外面任何地方被访问 ...

  10. ubuntu16+caffe fast-rcnnCPU运行步骤

    //////////////////////////////////////////////////////////////////////////////////////////////////// ...