1.open 打开
f = open(文件路径, mode=\"模式\", encoding=\"编码格式\") 最最底层操作的就是bytes
打开一个文件的时候获取到的是一个文件句柄.
文件句柄是一个可迭代对象
优点: 相对来说节省内存, 操作相对简单
for line in f: print(line.strip()) f.close()
绝对路径
从磁盘根目录开始寻找
相对路径
相对于当前程序所在的文件夹
../ 上一层文件
文件夹/ 进入xxx文件夹
2. mode:
r: 读取,只读.
读取文件的相关操作
1. read()
默认: 读取文件内容(全部)
read(n) 读取n个字符
2. readline() 读取一行
3. readlines() 读取全部. 返回列表
4. for line in f: 每次读取一行内容
f = open(\"水果.txt\", mode=\"r\", encoding=\"utf-8\") print(f.read(5)) # 读取5个字符 print(f.read(5)) # 继续读5个 print(f.readline().strip()) # 换行符为分割, strip()可以去掉换行. 读取到的内容第一件事就是去掉空白 print(f.readline()) # 换行符为分割 f.close()
w:
write 写入. 只写
创建文件
会清空文件
f = open(\'吃的\', mode=\"w\", encoding=\"utf-8\") # 可以帮我们创建文件 f.write(\'河南特色\\n\') f.write(\"东北特色\\n\") f.write(\'陕西特色\\n\') f.flush() # 刷新, 把数据写入文件 f.close()
a:
append 追加, 在文件的末尾写入内容
也可以创建文件
追加写
f = open(\"吃的\", mode=\"a\", encoding=\"utf-8\") f.write(\'湖南特色\\n\') f.write(\'四川特色\\n\') f.flush() f.close()
r+: 对于文件而言. 应该有的操作就两个:读, 写
读写操作
w+:
写读操作
a+:
追加写读
所有带b的表示直接操作的是bytes, 当处理非文本文件的时候.
rb
wb
ab: 断点续传
r+b
w+b
a+b
3. 文件操作中关于文件句柄的相关操作
seek() 移动光标
f.seek(0) 移动到开头(最多)
f.seek(0, 2) 移动到末尾
seek:两个参数
1. 表示偏移量
2. 从xxx开始偏移, 默认0, 开头 1, 当前位置 2, 末尾
tell
返回光标所在的位置
4. 文件修改
1. 先从文件中读取内容
2. 把要修改的内容进行修改
3. 把修改好的内容写人一个新文件
4. 删除掉原来的文件
5. 把新文件重命名成原来的文件的名字
继续阅读与本文标签相同的文章
170个城市网约车车辆准入条件大数据报告
区块链,加密货币走向基础化
-
8.29直播预告 | 阿里云InfluxDB数据采集演示
2026-05-19栏目: 教程
-
通过阿里云活动购买了云服务器,再怎么购买和挂载数据盘
2026-05-19栏目: 教程
-
云端数据仓库的模式选型与建设
2026-05-19栏目: 教程
-
大文件传输软件测评,看完就知道怎么选了
2026-05-19栏目: 教程
-
Gartner:2019年公有云服务六大趋势
2026-05-19栏目: 教程
