Jammly
发布于 2023-04-09 / 483 阅读
36

Python os模块

目录操作

  • os模块是Python内置的与操作系统功能和文件系统相关的模块,该模块中的语句的执行结果通常与操作系统有关,在不同的操作系统上运行,得到的结果可能不一样
  • os模块与os.path模块用于对目录或文件进行操作
import os
os.system('notepad.exe')  #打开记事本
os.system('calc.exe')     #打开计算器

#直接调用可执行文件
os.startfile('C:\\Program Files\\Tencent\\QQ\\Bin\\qq.exe')

os模块操作目录的相关函数

  • getcwd()
    返回当前的工作目录

  • listdir(path)
    返回指定路径下的文件和目录信息

  • mkdir(path[,mode])
    创建目录

  • makedirs(path1/path2…[,mode])
    创建多级目录

  • rmdir(path)
    删除目录

  • removedirs(path1/path2……)
    删除多级目录

  • chdir(path)
    将path设置为当前工作目录

  • walk(path)
    遍历path目录,返回一个由3个tuple类型的元素组成的列表
    索引值为0的表元素是文件夹名称,据此可以知道当前在处理的文件夹是哪一个。
    索引值为1的表元素是下一层文件夹列表,用来了解在此文件夹中还有几个下层文件夹,分别叫什么名字。
    索引值为2的元素是本文件夹内所有的文件列表,列出此文件夹中所有的文件名。
    由返回值的列表数据,组合出所有往下的树状目录结构的内容。

path=os.getcwd()	#获取当前目录
lst_files=os.walk(path)	#遍历path目录
for dirpath, dirname, filename in lst_files:
      for dir in dirname:
    	print(os.path.join(dirpath, dir))#遍历当前目录下的目录名
      print('____________')
      for file in filename:
    	print(os.path.join(dirpath, file))#遍历当前目录下的文件名
      print('____________')

os.path模块操作目录的相关函数

  • abspath(path)
    用于获取文件或目录的绝对路径

  • exists(path)
    用于判断文件或目录是否存在,如果存在返回True,否则返回False

  • join(path,name)
    将目录与目录或者文件名拼接起来

  • splitext()
    分离文件名和扩展名

  • basename(path)
    从一个目录中提取文件名

  • dirname(path)
    从一个路径中提取文件路径,不包括文件名

  • isdir(path)
    用于判断是否为路径