一、 基础语法

在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. Spark 调优

    资源调优 (1). 在部署 spark 集群中指定资源分配的默认参数 在 spark 安装包的 conf 下的 spark-env.sh SPARK_WORKER_CORES SPARK_WORKER ...

  2. 对于python 3.x与python2.x中新型类的继承特性总结

    (1)一般性继承特性 """ 该文件对于python 3.x 及python 2.x的New-style 类的一般性继承特性进行了说明和测试. (1)实例的继承特性:搜寻 ...

  3. Javascript观察者模式(Object.defineProperty、Reflect和Proxy实现)

    什么是观察者模式? 答:在数据发生改变时,对应的处理函数自动执行.函数自动观察数据对象,一旦对象有变化,函数就会自动执行. 参考<原生JavaScript实现观察者模式>(https:// ...

  4. vue学习(十一)vue-cli3开发单文件组件

    一 单文件组件介绍 二 如何安装Vue-Cli3脚手架 三 快速原型开发 四 vue-cli3生成项目 五 购物车项目搭建 六 购物车项目操作 七 Mock模拟数据 八 Vue中使用第三方组件(ele ...

  5. UVA - 12716 GCD XOR(GCD等于XOR)(数论)

    题意:输入整数n(1<=n<=30000000),有多少对整数(a, b)满足:1<=b<=a<=n,且gcd(a,b)=a XOR b. 分析:因为c是a的约数,所以枚 ...

  6. linux下的 sudo ln -s 源文件 目标文件

    这是linux中一个非常重要命令,请大家一定要熟悉.它的功能是为某一个文件或目录在另外一个位置建立一个同步的链接,类似Windows下的超级链接. 这个命令最常用的参数是-s,具体用法是:sudo l ...

  7. vps 跑流量

  8. one_day_one_linuxCmd---crontab 命令

    <坚持每天学习一个 linux 命令,今天我们来学习 tar 命令> 摘要:crond 是 linux 下用来周期性的执行某种任务或等待处理事件的一个守护进程,周期执行的任务一般由 cro ...

  9. 备份mysql的批处理命令

    需要工具mysqldump.exe的支持,安装mysql默认是带此工具的 批处理命令 set NOW_TIME_HH=%time:~0,2% if "%NOW_TIME_HH%" ...

  10. Python多线程,线程死锁及解决,生产者与消费者问题

    1.Thread类 普通调用 t = Thread(target=test, args=(i,)) # test为目标函数名, 若函数需要参数将其以元组形 # 式赋给args, 若无参数可不写 t.s ...