文件读写涉及到:文件打开、文件读和写、文件关闭四种操作。
文件打开
f = open(filename,mode)
打开模式(mode)有如下几种方式:
- r/w,前者只读,后者只写
- r+/w+,都为可读写
- a/a+,前者为追加模式,后者为可追加并且可读
- rb/wb/rb+/wb+/ab/ab+ 在前面6种基础上,将读写IO流改为二进制,可用于非文本的操作,如图片。
另外需要注意,凡是涉及到w的,当文件存在时会覆盖,文件不存在时会重新创建。涉及到a的,文件不存在时会创建,文件存在时会在末尾追加。
文件读
str = f.read(size) #默认尽可能读取全部,有size时可定义读取大小
str = f.readline(size) #读取一行
str = f.readlines(size) #读取多行,size表示系统最大读取缓存,当size低于此值时,不管size为多大,结果都一样
文件写
f.write(str)
f.writelines(str) #多行字符串
写入操作后,实际上内容暂存在缓存区中,还没有成功写入。需要使用:
f.flush()
或者关闭文件,文本才会被写入。
文件关闭
f.close()
文件及目录操作
利用os模块进行文件及目录操作,常见操作如下:
import os
os.rename(oldFileName,newFileName) #文件改名字
os.remove(fileName) #删除文件
os.mkdir(dirName) #创建目录
os.chdir(dirName) #定位到某个目录
os.getcwd() #获取当前目录
os.rmdir(dirName) #删除目录