Python os模块与文件操作深度解析

需积分: 5 0 下载量 124 浏览量 更新于2024-07-07 收藏 86KB PPTX 举报
"本资源是关于Python编程中对文件和文件夹进行操作的教程,主要讲解了`os`和`os.path`模块的使用方法,包括文件重命名、移动,列出目录内容,获取当前工作目录,创建和删除目录,以及启动程序等功能。此外,还介绍了如何深度遍历目录以及`os.path`模块中获取路径组成部分的函数。" 在Python中,管理和操作文件和目录是常见的任务,`os`和`os.path`模块提供了丰富的功能来支持这些操作。`os`模块是操作系统接口,它包含了多种与操作系统交互的函数。 1. **os模块**: - `os.rename()`:这个函数可以用来重命名文件或移动文件。例如,`os.rename('C:\\dfg.txt','D:\\test2.txt')`将把名为`dfg.txt`的文件从`C:`驱动器移到`D:`驱动器并改名为`test2.txt`。 - `os.listdir('.')`:用于列出当前工作目录下的所有文件和子目录,不包括隐藏文件。可以通过列表推导式过滤出特定类型的文件,如`.pyc`, `.py`, `.pyw`结尾的文件。 - `os.getcwd()`:返回当前工作目录的路径。 - `os.mkdir()`:创建新的目录,例如`os.mkdir(os.getcwd()+'\\temp')`会在当前目录下创建一个名为`temp`的目录。 - `os.chdir()`:改变当前工作目录到指定路径。 - `os.rmdir()`:删除指定的空目录。 - `os.startfile()`:根据给定的路径启动相应的应用程序。例如,`os.startfile('notepad.exe')`将打开系统中的记事本程序。 2. **os.path模块**: - `os.path.dirname(path)`:从路径字符串中提取出目录部分。例如,对于`'D:\\mypython_exp\\new_test.txt'`,返回`'D:\\mypython_exp'`。 - `os.path.basename(path)`:返回路径中的文件名部分。在上述例子中,这将返回`'new_test.txt'`。 - `os.path.join(directory, subPath)`:将两个或多个路径元素组合成一个完整的路径,遵循当前操作系统的路径分隔规则。 - `os.path.isfile(path)` 和 `os.path.isdir(path)`:分别检查给定的路径是否表示一个文件或目录,并返回布尔值。 此外,为了遍历目录及其所有子目录,可以使用递归函数,如示例10.1中的`listDirDepthFirst(directory)`。这个函数首先检查路径是文件还是目录,如果是文件则直接打印,如果是目录,则先打印目录名,然后递归调用自身以遍历该目录的所有子项。 通过熟练掌握`os`和`os.path`模块,开发者可以方便地处理各种文件和目录相关的任务,无论是简单的文件操作,还是复杂的目录遍历和管理。这些工具在编写脚本、自动化任务或者数据处理等场景中都非常实用。