Python文件操作
1.常规格式
f = open(file="文件所在路径/文件名",mode="操作模式",encoding="选择的编码")
# 例如
f = open(file="D:/Python_pro/s_27/day05/test.py",mode="r",encoding="utf-8")
# 简写
f = open("D:/Python_pro/s_27/day05/test.py","r",encoding="utf-8")
注意:文件路径会出现转义现象
可以修改为
f = open("D:\Python_pro\s_27/day05\test.py","r",encoding="utf-8")
或者
f = open(r"D:Python_pros_27/day05 est.py","r",encoding="utf-8")
建议使用
f = open("D:/Python_pro/s_27/day05/test.py","r",encoding="utf-8")
2.文件操作的三部曲
- 打开文件
- 对文件进行操作
- 关闭文件
# 三步格式
f = open(file="文件所在路径/文件名",mode="操作模式",encoding="选择的编码")
f.read() 或 f.readline() 或 f.readlines() 或 f.write() 或 f.seek() 或 f.tell()
f.close()
自己有时候会忘记关闭文件,所以想要让其自动关闭因此可以写成如下的格式
# 自动关闭文件
可以同时打开多个文件
with open("ddd.txt","r",encoding="utf-8")as f,
open("aaa.txt","r",encoding="utf-8")as f1:
print(f.read())
print(f1.read())
3.文件的操作模式与方法
# 读
mode = "r" # 只读
mode = "r+" # 读写
mode = "rb" # 读字节
f.read() #一次性读全部,容易造成内存溢出
f.readline() #一行一行的读
f.readlines() #一行一行的读并把结果加入列表
---------------------------------------------
# 写
mode = "w" # 清空写
mode = "w+" # 写读
mode = "a" # 追加写
mode = "a+" # 追加写读
mode = "wb"或"ab" #写字节
f.write() # 将字符串写入文件
---------------------------------------------
# 其他操作
f.seek() #移动光标
f.seek(0,0) # 将光标移动文件开头
f.seek(0,1) # 将光标移动到当前位置
f.seek(0,2) # 将光标移动文件末尾
f.seek(3) # 按照字节移动
# 查看光标位置
f.tell() # 按照字节查看,返回的是字节
4.文件操作常见错误
1.运行的文件和要打开的文件不是同一个文件夹下 通过路径
2.要打开的文件名和open里的名字不一致
3.使用word,记事本等软件造成的未知错误 不建议使用这种方式创建文件
5.文件内容的修改与备份示例
with open("原文件.txt","r",encoding="utf-8") as f,
open("新建文件.txt","w",encoding="utf-8") as f1:
for line in f:
new_i = line.replace("要修改的旧内容","修改的新内容")
f1.write(new_i)
print("修改完成")
import os
os.rename("原文件.txt", "备份文件.txt")
os.rename("新建文件.txt", "原文件.txt")