一、普通文件读写方式
1、读取文件信息:
with open(‘/path/to/file‘, ‘r‘) as f:
content= f.read()
2、写入文件中:
with open(‘/Users/michael/test.txt‘, ‘w‘) as f:
f.write(‘Hello, world!‘)
注意:
1、如果是要读取二进制文件,比如图片、视频等等,用‘rb‘或‘wb‘模式打开文件:
>>> f = open(‘/Users/michael/test.jpg‘, ‘rb‘)>>>f.read()‘\xff\xd8\xff\xe1\x00\x18Exif\x00\x00...‘ #十六进制表示的字节
2、要读写非ASCII编码的文本文件,就必须以二进制模式打开,再解码。比如GBK编码的文件
>>> f = open(‘/Users/michael/gbk.txt‘, ‘rb‘)>>> u = f.read().decode(‘gbk‘)>>>u
u‘\u6d4b\u8bd5‘
如果每次都这么手动转换编码比较麻烦,Python还提供了一个codecs模块帮我们在读文件时自动转换编码,直接读出unicode:
importcodecs
with codecs.open(‘/Users/michael/gbk.txt‘, ‘r‘, ‘gbk‘) as f:
f.read()#u‘\u6d4b\u8bd5‘
二、json文件读写方式
1、保存json文件:
model={...} #数据
with open("./hmm.json",‘w‘,encoding=‘utf-8‘) as json_file:
json.dump(model,json_file,ensure_ascii=False)
2、读取json文件:
model={} #存放读取的数据
with open("./hmm.json",‘r‘,encoding=‘utf-8‘) as json_file:
model=json.load(json_file)
原文地址:https://www.cnblogs.com/Eric15/p/10042342.html