1. os模块介绍
在Python中,文件操作是一项非常基础的编程任务。Python中的 os 模块提供了访问操作系统功能的接口,包括访问文件系统、进程管理、环境变量等等。通过 os 模块,我们可以在 Python 中执行很多跟操作系统相关的任务,比如创建、删除、移动文件或目录,获取当前工作目录,运行命令行程序等等。os 模块是 Python 标准库中的一部分,在 Python 中使用它非常方便。
具体来说,os模块提供了一系列函数,用于对文件和目录进行操作,如打开和关闭文件、读写文件、复制和移动文件、获取文件属性和目录内容等。这些函数提供了Python操作系统接口的基本功能,可以实现各种文件操作需求,同时也能够提高程序的效率和可移植性。
2. 常用方法详解
2.1. getcwd()
返回表示当前工作目录的字符串
语法
os.getcwd()
参数
- 无
实例
import os # 导入模块
print(os.getcwd())
2.2. listdir()
返回指定路径下的文件名的列表
语法
os.listdir(path)
参数
- path:指定要获取的文件和目录的根目录,不能是文件路径
实例
import os # 导入模块
print(os.listdir(r'C:\Users\Administrator\Desktop'))
2.3. makedirs()
创建多级目录,上级目录不存在也会自动创建。
语法
os.makedirs(name, exist_ok=False)
参数
- name:用于指定要创建目录的路径。
- exist_ok:可选参数,如果值为 False,当要创建的目录已经存在时,抛出 FileExistsError 异常;如果值为True,当要创建的目录已经存在时,不会抛出异常。默认值为 False。
- 返回值:无。
实例
import os # 导入模块
os.makedirs(r'mark/demo/1') # 创建目录
2.4. mkdir()
创建一级目录, 如果目录已存在会报错 FileExistsError,如果路径中父目录不存在会报错 FileNotFoundError。
语法
os.mkdir(path, mode)
参数
- path:用于指定要创建目录的路径。
- mode:目录的权限(某些系统会忽略)
- 返回值:无。
实例
import os # 导入模块
os.mkdir(r'./mark')
2.5. removedirs()
删除多级目录
语法
os.removedirs(name)
参数
- name:用于指定要删除目录的路径。该目录中,最后一级目录必须为空,否则将抛出 OSError:[WinError 145] 目录不是空的 异常。
- 返回值:无。
实例
import os # 导入模块
os.removedirs(r'mark/demo/1') # 删除多级目录
2.6. rmdir()
删除空目录
语法
os.rmdir(path, dir_fd)
参数
- path:表示要删除的目录,可以使用相对路径,也可以使用绝对路径。
- dir_fd :可选参数,用于指定要删除目录的相对于目录描述符的路径,而不是遵循符号链接(软链接)。
- 返回值:无。
实例
import os # 导入模块
os.rmdir(r'./mark')
2.7. remove()
删除文件
语法
os.remove(path, dir_fd)
参数
- path:表示要删除的文件,可以使用相对路径,也可以使用绝对路径。
- dir_fd :可选参数,用于指定要删除的文件相对于目录描述符的路径,而不是遵循符号链接(软链接)。
- 返回值:无。
实例
import os # 导入模块
os.remove('./1.txt')
2.8. rename()
用于将文件或目录重命名
语法
os.rename(src,dst,*,src_dir_fd=None,dst_dir_fd=None)
参数
- src :表示字符串类型的路径,用于指定需要进行重命名的文件或目录的路径。
- dst:表示字符串类型的路径,用于指定新的文件或目录名称。如果指定的路径已经存在,则多数系统下将抛出 FileExistsError 异常。
- src_dir_fd :可选参数,用于指定源地址的相对于目录描述符的路径,而不是遵循符号链接(软链接)。
- dst_dir_fd :可选参数,用于指定目标地址的相对于目录描述符的路径,而不是遵循符号链接(软链接)。
- 返回值:无。
实例
import os # 导入模块
os.rename(r'C:\Users\main.py',
r'C:\Users\main_new.py')
2.9. chdir()
更改当前工作目录为指定的路径
语法
os.chdir(path)
参数
- path:用于指定文件路径。
- 返回值:无。
实例
import os # 导入模块
print('更改前的当前工作目录:', os.getcwd())
os.chdir(r'Z:/') # 将当前工作目录更改到Z盘根目录
print('更改后的当前工作目录:', os.getcwd())
3. 其他函数
os.path.exists() | 是否存在 |
os.path.isdir() | 是否为目录 |
os.path.isfile() | 是否为文件 |
os.path.join() | 拼接为一个路径名称 |