json函数

使用json函数之前,首先需要导入json模块,import json

1)、json.dumps()函数

该函数是将 Python 对象编码成 JSON 字符串,例如:

  1. import json
  2. d={'谦谦':{'sex':'男','addr':'北京','age':34},'千千':{ 'sex':'女','addr':'北京', 'age':34},}
  3. print(json.dumps(d,ensure_ascii=False,indent=4)) #字典转成json,字典转换成字符串 加上ensure_ascii=False以后,可以识别中文, indent=4是间隔4个空格显示
  4.  
  5. #以上代码转换的结果是:
  6. {
  7. "谦谦": {
  8. "sex": "男",
  9. "addr": "北京",
  10. "age": 34
  11. },
  12. "千千": {
  13. "sex": "女",
  14. "addr": "北京",
  15. "age": 34
  16. }
  17. }

2)、json.dump()函数

该函数是可以将 Python 对象编码成 JSON 字符串,并自己帮你写入到文件中,不需要再单独写文件,例如:

  1. import json
  2. d={'谦谦':{'sex':'男','addr':'北京','age':34},'千千':{ 'sex':'女','addr':'北京', 'age':34},}
  3. fw =open('user_info.json','w',encoding='utf-8') #打开一个名字为‘user_info.json’的空文件
  4. json.dump(d,fw,ensure_ascii=False,indent=4)#字典转成json,字典转换成字符串,不需要写文件,自己帮你将转成的json字符串写入到‘user_info.json’的文件中

3)、json.loads()函数

文件product.json的原文件内容如下:

  1. {
  2. "iphone":{
  3. "color":"red",
  4. "num":1,
  5. "price":98.5
  6. },
  7. "wather":{
  8. "num":100,
  9. "price":1,
  10. "color":"white"
  11. }
  12. }

使用json.loads()函数把json串变成python的数据类型:如下:

  1. import json
  2. f =open('product.json',encoding='utf-8') #打开‘product.json’的json文件
  3. res=f.read() #读文件
  4. print(json.loads(res))#把json串变成python的数据类型:字典
  5.  
  6. #以上转换的结果是:
  7. {'iphone': {'color': 'red', 'num': 1, 'price': 98.5}, 'wather': {'num': 100, 'price': 1, 'color': 'white'}}

4)、json.load()函数

该函数把json串变成python的数据类型:字典,传一个文件对象,它会帮你读文件,不需要再单独读文件,例如:

  1. import json
  2. f =open('product.json',encoding='utf-8') #打开文件
  3. print(json.load(f))#把json串变成python的数据类型:字典,传一个文件对象,它会帮你读文件,不需要再单独读文件
  4.  
  5. #以上转换执行的结果是:
  6. {'iphone': {'color': 'red', 'num': 1, 'price': 98.5}, 'wather': {'num': 100, 'price': 1, 'color': 'white'}}

Python3之json文件操作的更多相关文章

  1. Python3中IO文件操作的常见用法

    首先创建一个文件操作对象: f = open(file, mode, encoding) file指定文件的路径,可以是绝对路径,也可以是相对路径 文件的常见mode: mode = “r”   # ...

  2. python3.x Day3 文件操作

    文件操作:操作文件实际是4步骤1.描述文件是哪个 2.打开文件 3.操作文件 4.关闭文件 1.打开文件使用open方法,代码举例: data=open("wait_you",en ...

  3. Python3读写JSON文件

    JSON简介 JSON(JavaScript Object Notation)即JavaScript对象表示法,一种轻量级,通用的文本数据格式. JSON语法支持对象(Object),数组(Array ...

  4. python3的一些文件操作的脚手架

    用python把原来的脚本重构了一下,其中写了文件操作的一些函数,如下: import os import shutil import hashlib import stat #查找文件夹中的某个文件 ...

  5. python3处理json文件中含有中文dumps的应用

    python3的编码问题一直比较简单 内存中字符串采用unicode 存储到文件中采用utf-8 以下为str,byte互相转换的过程: str = "abc学习" str Out ...

  6. json文件操作

    1.把字典或list转换成字符串方法 json.dumps() 2.把字符串转换成字典方法 json.loads() 3.indent 存储文件时每行加缩进数 4.ensere_asci 文件中有中文 ...

  7. python从入门到大神---4、python3文件操作最最最最简单实例

    python从入门到大神---4.python3文件操作最最最最简单实例 一.总结 一句话总结: python文件操作真的很简单,直接在代码中调用文件操作的函数比如open().read(),无需引包 ...

  8. Python基础:Python函数、文件操作、递归

    函数参数 函数参数包括位置参数,关键字参数,动态参数(*args, **args)三种. 传参的过程是形式参数的赋值. *args传入的参数是元组形式,**args传入的参数是字典形式. 示例代码如下 ...

  9. 包含全国所有省份、城市、县的一份json文件

    最近做项目时,有个需要全国所有省市信息的数据,于是百度了一下,发现CSDN的很多都需要积分下载,无解!所以自己收集了一份整理了出来. 简单说明一下 1.这是一份json文件,这是因为全国的省市信息一般 ...

随机推荐

  1. codeforces 1194F (组合数学)

    Codeforces 11194F (组合数学) 传送门:https://codeforces.com/contest/1194/problem/F 题意: 你有n个事件,你需要按照1~n的顺序完成这 ...

  2. CP策略含有中文字符提交失败故障解决

    硬件平台:CP5600 系统版本:R80.10 补丁版本:TAKE103 故障现象:提交新增策略失败,日志显示 if the problem persists contact Checkpoint S ...

  3. Struts2 基于XML校验(易百教程)

    以下是的各类字段级和非字段级验证在Struts2列表: date validator: <field name="birthday"> <field-valida ...

  4. PHP常用函数拾遗

     PHP中常用过滤函数addslashes().mysql_real_escape_string().mysql_escape_string() 如addslashes().mysql_real_es ...

  5. Elasticsearch系列---实战搜索语法

    概要 本篇介绍Query DSL的语法案例,查询语句的调试,以及排序的相关内容. 基本语法 空查询 最简单的搜索命令,不指定索引和类型的空搜索,它将返回集群下所有索引的所有文档(默认显示10条): G ...

  6. mysql主从之主机名导致主从机制失败的问题

    一 主库 mysql主服务器的正确配置需要指定log-bin.log-bin-index server-id = 1 log-bin=master-bin log-bin-index = master ...

  7. $HDU$ 4352 ${XHXJ}'s LIS$ 数位$dp$

    正解:数位$dp$+状压$dp$ 解题报告: 传送门! 题意大概就是港,给定$[l,r]$,求区间内满足$LIS$长度为$k$的数的数量,其中$LIS$的定义并不要求连续$QwQ$ 思路还算有新意辣$ ...

  8. 解决阿里云专有网络ftp无法远程链接

    配置好ftp后本机测试可用但无法远程连接 网络上找了很多方法,配置防火墙出入站规则均无效 提交阿里云工单,给出解决方法,测试后可用

  9. 如何修改Docker已运行实例的端口映射

    如何修改Docker已运行实例的端口映射 Docker的端口映射,往往出现在两个阶段需要处理: 1.是在docker启动前就已经确定好,哪个docker实例映射哪个端口(往往这个情况比较,需要提前做规 ...

  10. 2018 东北地区大学生程序设计竞赛(ABEHIK)

    HDU6500:Problem A. Game with string 题意: 给你一个字符串s以及它的m个子串的首尾位置,现在Alice和 Bob两个人轮流在任一子串的前面或者后面加1个字符,要求加 ...