1. 使用os.path进行路径和文件管理
1.1 拆分路径
os.path.split 返回一个二元组,包含文件路径和文件名
os.path.dirname 返回文件的路径
os.path.basename 返回文件名
os.path.splitext 返回文件按拓展名分割的二元组
1.2 构建路径
os.path.expanduser 展开用户的home目录
os.path.abspath 获取文件的绝对路径
os.path.join 根据不同的操作系统平台,使用不同的路径分割符拼接路径
os.path.isabs 判断是否为绝对路径
1.3 获取文件属性
os.path.getsize 获取文件大小
os.path.getatime 获取文件的访问时间
os.path.getmtime 获取文件的修改时间
os.path.getctime 获取文件的创建时间
1.4 判断文件类型
os.path.exists
os.path.isfile
os.path.isdir
os.path.islink
os.path.ismount
应用案例:
1. 获取指定目录下所有文件列表
2. 获取指定目录下所有文件和大小的字典
2. 利用os模块管理文件和目录
2.1 查看文件或者目录
os.getcwd() 获取当前目录
os.listdir() 列出指定目录下文件和目录
2.2 对文件和目录的增删查改
os.unlink/remove 删除path路径所指的文件
os.rmdir 删除文件夹,该文件夹必须为空
os.mkdir 创建一个文件夹
os.rename 重命名文件或文件夹
2.3 文件的权限
os.access 判断文件是否有对应的权限
os.chmod 改变文件的权限
案例:打印出最常用的10条Linux命令
3. 使用高级文件处理接口shutil
对于常见的文件操作,shutil更易用。
3.1 复制文件和文件夹
shutil.copy
shutil.copytree
3.2 文件和文件夹的改名和移动
shutil.move
该函数与Linux中的move作用一模一样
3.3 删除目录
shutil.rmtree
这个不管文件夹是否为空,都将删除,这个是与os.rmdirde的区别