今日主要内容
一. 文件操作 open() 文件句柄
1 open()打开一个文件, 获取的是文件句柄
f = open("胡辣汤", mode="r", encoding="utf-8")
2 read() # 读取全部 正常情况下不能用
# read(n) 读取n个字符
# content = f.read(3)
3 readline() # 读取一行
4 readlines() # 读取多行 正常情况下不能用
5 write()
# 一次读取一行
# while 1:
# line = f.readline()
# print(line)
6 for line in f: 遍历文件中的内容 一行一行的读取。 每次读取的内容交给前面的变量
路径的问题:
1. 绝对路径 (当文件路径是固定的时候)
从磁盘根目录寻找文件 windows 下用的就是c d e f盘 linux: userinxxxx
2. 相对路径
从当前程序运行的文件夹内寻找
..表示上一层文件
二. 文件操作的相关模式Mode
r: 只读
w: 只写 , 先清空里面的内容,然后再写入. 并具有新建功能(和复制功能)
a: 只追加 , 追加写入, 具有新建,
r+:读写 先读后写 # 默认如果直接写入的话。 在开头写入。 覆盖开头的内容
坑: 不论你读取多少内容。再次写入的时候都是在末尾(需调光标)
w+:写读 # 先清空。 然后再操作 (此使用率最低)
a+:增读写 # 不论光标在何处 写入的时候都是在末尾
非文本文件
rb: #
wb: #
ab: #
r+b: #
w+b: #
a+b: #
三. 相关操作
1. seek()移动光标(重点) 注意, 移动的单位是byte
f.seek(0) 开头
f.seek(0,2) 移动到末尾
2. f.tell() 获取光标所在的位置
3. truncate() 截断文件(慎用)
四. 文件修改
with open(xxx) as 句柄,
open(xxxxx)as xxx
不用手动关闭文件句柄
文件修改的步骤
1. 从源文件中读取数据。
2. 写入到副本文件中
3. 删除源文件
4. 把副本重命名成源文件
import os
os.remove()
os.rename()