变量声明
文件变量的声明需要使用open方法,参数需要传入文件路径 操作模式 以及 编码格式。
路径可以使用绝对路径或相对路径表示,建议使用前缀r
来避免路径中的斜杠转义问题。
文本模式需要使用指定字母来表示,字母列表如下
- r
表示读取操作
- w
表示写入操作
- a
表示追加写入操作
- b
表示二进制模式操作
而编码则需要与文本本身编码保持一致,如果文件编码与编译环境编码一致,可以使用默认值。
文本变量声明示例:
file1 = open(r'F:\test\aaa.txt','rw') # 对F:\test目录下的aaa文件创建一个读写操作器
import os
os.getcwd() # 获取当前操作目录
os.chdir(r'F:\test') # 切换当前目录到F:\test
file2 =
open('aaa.txt','ab',encoding='utf8') # 对aaa文件创建一个utf8编码的二进制模式追加写入操作器
基本操作
file1.read()
读取文件全部信息到字符串file1.seek(n)
将操作指针移动到指定字符(字节)下标位置,0表示文件开头file1.close()
显示关闭文件操作器,非必需,建议执行
读取操作
file1.read([n])
一次性读取所有或指定字符(字节)信息file1.readlines()
读取文件所有内容,按行分割为字符串列表file1.readline()
获取文件内一行文本for line in file1:
逐行遍历文件信息
写入操作
file2.write('bbb\n')
在file2文件中写入文本'bbb'
并换行,write方法不会自动换行file2.writelines(list1)
将一个字符串列表写入到文件中,writelines方法同样不会自动换行file2.flush()
将文本缓存写入到磁盘,使修改生效file2.close()
关闭文件连接,释放资源
文件操作上下文
上下文类似开辟出独立空间,空间内代码执行完毕后,会自动释放空间内创建的特定资源,对于文件变量,会自动执行close方法释放
with open('people.txt','w',encoding='utf8') as f:
f.write('aaa\t')
f.write('bbb\t')
print('file has closed')