文件的简介
1. 什么是文件?
操作系统暴露给用户操作硬盘的接口。
2. 操作文件基本流程?
三步骤:
1.1 使用open()打开文件,返回文件对象f,默认r模式打开,可以执行读操作。
f = open('a.txt', 'r', encoding='utf-8')
1.2 调用文件对象下的读写方法操作文件。
f.read()
1.3. 关闭文件
f.close()
补充:文件路径
- 相对路径:相对于本py文件所在目录下的路径
- 绝对路径:根路径开始的全部路径
问题:当写成绝对路径的时候,路径中有斜杠,可能造成转义
eg: 'E:\python\data\a.txt'
解决:在路径字符串前面加一个r,取消字符串中的转义,显示字符串原本内容
eg: r'E:\python21\day10\a.txt'
3. with关键字:上下文管理器
由于每次打开完文件都需要关闭,若不关闭会造成资源浪费,因此python提供了with关键字来帮助管理上下文
eg:
with open(r'a.txt', 'r', encoding='utf-8') as f:
print(f.read())
总结:
- 在执行完子代码之后,with会自动执行f.close()来关闭文件。
- 可以用with同时打开多个文件,用逗号分隔。
with open('a.txt','r') as read_f,open('b.txt','w') as write_f:
ps:如果一行代码太长,可以使用反斜杠(\),然后换行,依旧表示同一行代码.
控制文件读写操作的模式
1. r: read,只读模式 (默认模式)
- 路径存在,可以直接读取
- 路径不存在,会报错
- 不可写操作
示例:
with open('a.txt', mode='r', encoding='utf-8', ) as f:
print(f.read())
f.write('aaaaa')
2. w: write,只写模式
- 路径存在,会先将文件内容清空,再执行写操作
- 路径不存在,会创建一个新的路径文件,再执行写操作
- 不可读操作
示例:
with open('a.txt', mode='w', encoding='utf-8', ) as f:
f.write('aaaaa')
print(f.read())