Python 的 os 模块提供了许多与操作系统交互的功能,包括文件和目录的操作、进程管理、环境变量访问等。这个模块对于编写跨平台的Python脚本特别有用,因为它允许你以一种对操作系统透明的方式执行系统相关的任务。下面是一些 os 模块中常用函数的简要说明:
1. 文件和目录操作
- os.mkdir(path[, mode]):创建单个目录。如果父目录不存在,则会抛出异常。
- os.makedirs(name, mode=0o777, exist_ok=False):创建多级目录。如果 exist_ok 设置为 True,则不会因为目录已存在而抛出异常。
- os.rmdir(path):删除空目录。
- os.removedirs(path):递归删除空目录。如果中间某个目录非空,则停止删除并抛出异常。
- os.rename(src, dst):重命名文件或目录。
- os.remove(path):删除文件。
- os.listdir(path=None):返回指定目录下的所有文件和目录名。
2. 路径操作
- os.path.join(path1[, path2[, ...]]):将一个或多个路径组合成一个完整的路径,适配不同操作系统的路径分隔符。
- os.path.split(path):将路径分割成目录和文件名两部分。
- os.path.dirname(path):返回路径中的目录部分。
- os.path.basename(path):返回路径中的文件名部分。
- os.path.exists(path):检查路径是否存在。
- os.path.isfile(path):检查给定路径是否为文件。
- os.path.isdir(path):检查给定路径是否为目录。
3. 环境变量
- os.environ:一个包含环境变量的字典,可以像操作字典一样读取或修改环境变量。
- os.getenv(key[, default]):获取环境变量的值,如果没有该变量则返回 default。
- os.putenv(key, value):设置环境变量的值(注意:这在某些平台上可能不起作用)。
4. 进程管理
- os.system(command):运行shell命令,并返回退出状态码。
- *os.spawn()**:一系列函数用于启动新进程,如 os.spawnl, os.spawnle 等,提供不同的方式来处理进程。
- os.fork():仅在Unix系统上可用,创建一个子进程(在Windows上不可用)。
5. 其他功能
- os.getcwd():获取当前工作目录。
- os.chdir(path):改变当前工作目录到指定路径。
- os.urandom(n):生成指定长度的随机字节串,适合于加密相关操作。
- os.pipe():创建管道,用于进程间通信。
使用 os 模块时,需要注意的是某些函数在不同操作系统上的表现可能有所不同,因此编写代码时尽量使用该模块提供的跨平台功能,或者利用 os.name(指示操作系统类型,如 'nt' 对应Windows,'posix' 对应大多数Unix-like系统)来编写条件分支,以确保代码的可移植性。
本文暂时没有评论,来添加一个吧(●'◡'●)