1.新建一个文件number.json
文件内容为空
2.新建一个python脚本test.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import json
numbers = [1,32,43,5,7]
with open('numbers.json','w') as f:
json.dump(numbers,f)
with open('numbers.json','r') as f:
data=json.load(f)
print(numbers)
3.把这两个文件放在同一目录下,运行python脚本
$python2.7 test.py
4.运行结果
[1, 32, 43, 5, 7]
同时会发现number.json中也有了数据[1, 32, 43, 5, 7]
知识点:
1.默认都是读取文本文件,并且是UTF-8编码的文本文
读文件:
with open('/path/to/file', 'r') as f:
print(f.read())
写文件:
with open('/Users/michael/test.txt', 'w') as f:
f.write('Hello, world!')
2.读取二进制文件,比如图片、视频等等,用'rb'
模式打开文件即可
f = open('/Users/michael/test.jpg', 'rb')
f.read()
3.文件格式转换:
import json
a={'name':'test','age':1}
a_json_str=json.dumps(a) #将dict转储为json的字符串(str)格式
a_dict=json.loads(a_json_str) #将json的str形式转为dict格式
#假设有一个json文件a.json
fp=open('a.json','r')
dict_=json.load(fp) #将一个json文件转为dict格式
fp2=open('b.json','w')
json.dump(dict_,fp2) #将一个dict转为json文件
总结:
json.dumps(dict) : dict---->str
json.loads(str) : str----->dict
json.dump(dict,fp) : dict---->文件
json.load(fp) : 文件----->obj