python内置文件高级操作函数
删除文件
Python 没有内置删除文件的函数,但是在内置的 os 模块中提供了删除文件的 remove()函数,语法格式如下:
os.remove(path)
其中,path 为要删除的文件路径,可以使用相对路径,也可以使用绝对路径。
重命名文件和目录
os 模块提供了重命名文件和目录的函数 rename(),如果指定的路径是文件,则重命名文件;如果指定的路径是目录,则重命名目录。语法格式如下:
os.rename(src,dst )
其中,src 用于指定重命名的目录或文件,dst 用于指定重命名后的目录或文件。
获取文件基本信息
在计算机上创建文件后,该文件本身会包含一些信息。例如,文件的最后一次访问时间、最后一次修改时间以及文件大小等基本信息。通过 os 模块的 stat()函数可以获取到文件的这些基本信息,语法格式如下:
os.stat(path)
其中,path 为要获取文件基本信息的文件路径,可以是相对路径,也可以是绝对路径。
函数的返回值是一个对象,该对象包含如表所示的属性。通过访问这些属性可以获取文件的基本信息。
删除目录
删除空目录可以使用 os 模块提供的 rmdir()函数实现。
通过rmdir() 函数删除目录时,只有当要删除的目录为空时才起作用。语法格式如下:
os.rmdir(path)
其中,path为要删除的目录,可以使用相对路径,也可以使用绝对路径,不存在会报错,先判断是否存在再删除
删除非空目录,则需要使用 Pthon 内置的标准模块shutil的rmtree()函数实现。
import shutil
shutil.rmtree("C:\\demo\\test")
遍历目录
os 模块的 wak() 函数用于实现遍历
os.walk(top[,topdown][, onerror][,followlinks])
参数说明:
top: 用于指定要遍历内容的根目录。
topdown: 可选参数,用于指定遍历的顺序,
如果值为 True,表示自上而下遍历 (即先遍历根目录);
如果值为 False,表示自下而上遍历 (即先遍历最后一级子目录)。
默认值为 True。
onerror: 可选参数,用于指定错误处理方式,默认为忽略,如果不想忽略也可以指定一个错误处理函数。通常情况下采用默认。
followlinks:可选参数,默认情况下,不会向下转换成解析到目录的符号链接,将该参数值设置为 True,用于指定在支持的系统上访问由符号链接指向的目录。
返回值:返回一个包括3个元素(dirpath,dimames,filenames)的元组生成器对象。其中,dirpath表示当前遍历的路径,是一个字符串; dimames 表示当前路径下包含的子目录,是一个列表; filenames表示当前路径下包含的文件,也是一个列表。
#遍历当前目录下的文件和目录
import os
for root, dirs, files in os.walk("."):
print(dirs)
print(files)