文件处理
什么是文件处理
修改储存信息
什么是文件
操作系统提供的虚拟概念,存储信息(用二进制存储信息)
操作文件的流程
- 打开文件
- 修改/读取文件
- 保存文件
- 关闭文件
文件的三种打开方式
读取
rt :read text 读文本内容,只读
写入
wt:write text 清空文件后写入,只写
追加写入
at:append text追加写入,只写
绝对路径和相对路径
文件的路径
就是文件在硬盘当中的地址
绝对路径
从盘符(c盘、d盘)开始的地址
相对路径
执行文件(当前运行文件)的文件夹下的文件名,执行文件和打开文件属于同一文件夹下
写项目尽量使用相对路劲,转换系统时方便
with管理文件上下文
with open()可以自动关闭文件,结束文件对操作系统的占用。
with open()还可以使用逗号分隔,一次性打开多个文件,实现文件的快速拷贝。
文件的高级应用
-
r+ 可读可写
读就正常读,写是走到指针头写入,覆盖写入
-
w+
写和w一样也是清空写入
-
a+
写是追加写,因为a+操作时默认光标在文件尾部
-
seek
移动光标的位置(以字节为单位)
whence
移动光标的位置(以字节为单位)
whence规定只有0,1,2 三种模式 # 0相当于文件头开始;1相当于当前文件所在位置;2相当于文件末尾
-
tell
移动光标的位置(以字节为单位)
-
truncate
截断(以字节为单位)
with open('test.py', 'ab') as fa: fa.truncate(2) # 删除第二个字节后面的内容
-
read
读取并移动光标(以字符为单位)
print(fr.read(3)) # 3表示3个字符,不加默认读取所有 # 中文和英文单个字母都属于一个字符
文件的修改
文件没有修改一说,只有覆盖
缓存文件的原理:
- 同时打开多个文件
- 读取a文件的同时,将a文件的内容修改
- 将修改后的a文件内容保存到b文件
- 删除a文件
- 将b文件命名为a
- 修改完成