文件写入
write方法写入文件,w参数写入文本文件,wb写入二进制文件。写入之后close()方法关闭,写入的过程中,可以使用flush方法将内存中数据立即写入到文件中。
例子1:
f = open(r'd:\test\test20240802.txt','w')
f.write('测试test')
f.close()
例子2:
with open(r'd:\test\test20240802.txt','w') as fwriter:
fwriter.write('测试二进制test')
常用操作文件和目录的方法
常用的操作文件和目录的模块是os模块和shutil模块。
常用方法:
os.getcwd() | 获取当前python脚本工作目录 |
os.listdir() | 返回目录下的文件,os.listdir(‘c:\\’) |
os.remove(filepath) | 删除一个文件 |
os.removedirs(filepath) | 删除多个目录,os.removedirs(r‘d:\\test’) |
os.path.isfile(filepath) | 判断路径是否是一个文件 |
os.path.isdir(filepath) | 判断路径是否是一个目录 |
os.path.isabs() | 判断是否是绝对路径 |
os.path.exists(filepath) | 检测路径下是否有指定文件,os.path.exists(r’d:\\test’),是否有test文件夹 |
os.path.split() | 分离一个路径的目录名和文件名,os.path.split(r’/home/data/test.txt’),返回一个元组(‘/home/data’,’test.txt’) |
os.path.splitext() | 分离扩展名,os.path.splitext(r’/home/data/test.txt’),返回一个元组(‘/home/data/test’,’.txt’) |
os.path.dirname() | 获取路径名 |
os.path.basename() | 获取文件名 |
os.getenv() | 读取环境变量 |
os.putenv() | 设置环境变量 |
os.linesep | 获取当前系统平台使用的行终止符,windows使用’\r\n’,linux使用’\n’,Mac使用’\r’ |
os.name | 返回系统正在使用的平台,windows是’nt’,linux/unix是‘posix’ |
os.rename(oldname,newname) | 重命名文件或者目录 |
os.mkdirs(r‘c:\test\test01’) | 创建多级目录 |
os.mkdir(‘test’) | 创建单个目录 |
os.stat(file) | 获取文件属性 |
os.chmod(file) | 修改文件的权限与时间戳 |
os.path.getsize(filename) | 获取文件大小 |
shutil.copytree(‘olddir’,’newdir’) | 复制文件夹,两个参数都是目录,且newdir不能存在。 |
shutil.copyfile(‘oldfile’,’newfile’) | 复制文件,oldfile和newfile参数都只能是文件。 |
shutil.copy(‘oldfile’,’newfile’) | 复制文件,oldfile只能是文件,newfile可以是文件也可以是目录。 |
shutil.move(‘oldpos’,’newpos’) | 移动目录, |
os.rmdir(‘dir’) | 删除空目录 |
shutil.rmtree(‘dir’) | 删除空目录、有内容的目录。 |