Python3之json文件操作

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的原文件内容如下:

{
    "iphone":{
        "color":"red",
        "num":1,
        "price":98.5
    },
    "wather":{
        "num":100,
        "price":1,
        "color":"white"
    }
}

使用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的数据类型:字典,传一个文件对象,它会帮你读文件,不需要再单独读文件,例如:

import json
f =open(‘product.json‘,encoding=‘utf-8‘)    #打开文件
print(json.load(f))#把json串变成python的数据类型:字典,传一个文件对象,它会帮你读文件,不需要再单独读文件 

#以上转换执行的结果是:
{‘iphone‘: {‘color‘: ‘red‘, ‘num‘: 1, ‘price‘: 98.5}, ‘wather‘: {‘num‘: 100, ‘price‘: 1, ‘color‘: ‘white‘}}

原文地址:https://www.cnblogs.com/xiehong/p/9050301.html

时间: 2024-10-04 10:20:03

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

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

用python把原来的脚本重构了一下,其中写了文件操作的一些函数,如下: import os import shutil import hashlib import stat #查找文件夹中的某个文件 def findMyFileDir(dirPath, findFile): files = [] dirs = [] for root, dirs, files in os.walk(dirPath, topdown=False): for file in files: if file == fi

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

python3的编码问题一直比较简单 内存中字符串采用unicode 存储到文件中采用utf-8 以下为str,byte互相转换的过程: str = "abc学习" str Out[6]: 'abc学习' mybyte = str.encode("utf-8") mybyte Out[8]: b'abc\xe5\xad\xa6\xe4\xb9\xa0' str2 = mybyte.decode("utf-8") str2 Out[10]: 'ab

Python3 简单的文件操作

方法一:open() 我们平时进行写入文件的时候一般都用open()函数 f = open('/Users/michael/test.txt', 'w') # 路径 mode f.write('Hello, world!') # write() 方法用于向文件中写入指定字符串. f.close() # 关闭文件.关闭后文件不能再进行读写操作. 我们可以反复调用write()来写入文件,但是务必要调用f.close()来关闭文件.如果不进行关闭有可能我们的文件数据就丢失了. 方法二:with op

[Python3]目录与文件操作

概述 本文就os和path模块中常用的方法进行了说明和列举,更多的方法和技巧请参加官方文档 os模块常用方法 我们先看看os模块所提供的目录操作方法,直接上代码实例: # -*- coding:utf-8 -*- __author__ = '谷白' # 导入os模块 import os if __name__ == "__main__": # 返回完整的路径目录 print("获取当前工作目录") print(os.getcwd()) # 返回的是: . print

Python3.5对文件的操作

这是一个python3.5对文件操作的整理,里面有复制/改名/覆盖输入/追加输入等等. 前提:在E盘的PythonAAA/A的文件夹下,有一个123.txt 1)覆盖输入 >>>import os    #启动模块 >>>f=open("e:/PythonAAA/A/123.txt","w+")    #打开目标文件,w+是以读写方式打开,同r+ >>>f.write("我爱北京天安门")  

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

函数参数 函数参数包括位置参数,关键字参数,动态参数(*args, **args)三种. 传参的过程是形式参数的赋值. *args传入的参数是元组形式,**args传入的参数是字典形式. 示例代码如下:(这部分直接看代码实例会更清楚静态参数与动态参数如何混用) 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # def story(**kwargs): 4 # return 'Once upon a time,there was a ' 5

C#中用JavaScriptSerializer和Json.Net操作json格式的文件

1.json文件 2.写出对应的类 1 //折扣 2 public class Discount 3 { 4 public string Qty { get; set; } 5 public string percentage { get; set; } 6 } 7 //产品信息 8 public class ProductInfo 9 { 10 public string packing { get; set; } 11 public string Qty { get; set; } 12 p

Go(day7 [终端读写| 文件操作 | 命令行参数 | Json序列化])

终端读写 操作终端相关文件句柄常量 os.Stdin:标准输入 os.Stdout:标准输出 os.Stderr:标准错误输出 终端读写示例: //Sscanf 是从变量中读取值 package main import "fmt" var ( firstName,lastName ,s string i int f float32 input = "56.12 / 5212 / Go" format  = "%f/%d/%s" ) func ma

Python基础(三)文件操作和处理json

文件操作步骤:1.有一个文件,2.打开文件,3.读写修改文件,4.关闭文件 一.有一个文件:新建或导入文件 二.打开文件:如果是新建的文件默认和py文件在同一个目录:如果是打开文件,要将文件放在py同目录或者是打开文件要写绝对路径 打开文件有两种方式:1. f = open('user.txt') ; 2. with open ('user.txt') as f, open('user2.txt') as f: 两者的区别是第1种方法必须用f.close()关闭,定义一次只能打开一个文件 :第二