个人Blog:dykang.top
Python文件操作
步骤
1.打开文件 2.读和写文件 3.关闭文件
1.打开文件
open(需要自己手动关闭文件)
打开文件:从磁盘读取到内盘 open(file, mode='r',encoding=None) file:要打开的文件,类型是字符串,文件路径是绝对路径(根目录开始)或者相对路径,建议使用相对路径 mode: r是只读文件 w是只写文件 a是追加打开(末尾追加) encoding: 编码方式 utf-8(3字节的二进制) gbk(2字节二进制) 返回值是文件的对象,后续对文件进行操作
with open(不需要书写手动关闭文件的代码)
with open (file,mode='r',encoding=None) as file file.write() 出了缩进就会关闭
2.读或写文件
写文件
前提 mode=w 或者 a 文件对象.write('写入文件内容')
读文件
前提 mode=r 文件对象.read('写入文件内容')
按行读取
with open (b.txt,encoding='utf-8') as f:
while True:
buf = f.readline()
if len(buf)==0:
break;
else:
print(buf,end='')
3.关闭文件
对象.close()
JSON文件的处理
读取json文件
1.导包 import json 2.读打开文件 3.读文件 json.load(文件对象) 返回的是字典(单个对象)或者数组(多个对象)
#
{
"name" : "张三"
}
import json
with open (b.txt,encoding='utf-8') as f:
buf = json.load(f)
buf.get('name') #张三
写入json数据
1.导包 2.写打开文件 3.准备好数据 json.dump(list,f,ensure_ascii=False,indent=4) ensure_ascii:直接显示中文 indent:显示缩进
import json
file = '1x.json'
arr = [
{
"name": "zhangsan",
"age": 18
},
{
"name": "zhangsan1",
"age": 19
}
]
with open(file,'w',encoding='utf-8') as f:
# buf = json.load(f)
# print(buf.get('age'))
json.dump(arr,f,ensure_ascii=False,indent=4)
异常
try:
可能出现异常的代码
except 异常类型1:
(except Exception as 变量:)
发生其他类型的异常,执行代码
else: 没发生其他类型的代码
finally:
不管有没有发生都会执行
模块导入
import random as rd from random import randint from 模块名 import 工具名