文章目录
- 1. 文件和目录操作
- 2. 环境变量
- 3. 进程
- 4. 其他
- 示例
os
是 Python 的标准库之一,提供了许多与操作系统交互的功能。以下是一些 os
库中常用的函数和模块的详细用法:
1. 文件和目录操作
os.getcwd()
: 获取当前工作目录。os.chdir(path)
: 改变当前工作目录。os.listdir(path='.')
: 列出指定目录下的所有文件和子目录。如果没有指定路径,则列出当前工作目录。os.mkdir(path)
: 创建一个新目录。os.makedirs(name, mode=0o777, exist_ok=False)
: 递归创建目录。os.rmdir(path)
: 删除一个空目录。os.remove(path)
: 删除一个文件。os.rename(src, dst)
: 重命名文件或目录。os.replace(src, dst)
: 重命名文件或目录,如果目标文件存在,则替换它。os.path.isfile(path)
: 判断指定路径是否为文件。os.path.isdir(path)
: 判断指定路径是否为目录。os.path.exists(path)
: 判断指定路径是否存在。os.path.getsize(path)
: 获取文件大小,单位是字节。os.path.join(path, *paths)
: 将多个路径组件连接成一个完整的路径字符串
2. 环境变量
os.environ
: 获取和设置环境变量。os.getenv(key, default=None)
: 获取环境变量,如果环境变量不存在,则返回默认值。os.putenv(key, value)
: 设置环境变量。
3. 进程
os.fork()
: 在 Unix 和 Linux 中,创建一个新的进程。os.execv(path, args)
: 在 Unix 和 Linux 中,用新的程序替换当前进程。os.spawnv(mode, path, args)
: 在 Unix 和 Linux 中,创建一个新的进程并执行新的程序。os.system(command)
: 在 Unix 和 Linux 中,执行一个 shell 命令。os.popen(command, mode='r', buffering=-1)
: 在 Unix 和 Linux 中,打开一个管道到一个新的进程。
4. 其他
os.name
: 获取当前操作系统的名称。os.sep
: 获取当前操作系统的路径分隔符。os.linesep
: 获取当前操作系统的行分隔符。os.urandom(n)
: 返回一个包含n
个字节的字符串,这些字节是随机的。
示例
import os
# 获取当前工作目录
print(os.getcwd())
# 改变当前工作目录
os.chdir('/tmp')
# 列出当前工作目录下的所有文件和子目录
print(os.listdir())
# 创建一个新目录
os.mkdir('new_directory')
# 递归创建目录
os.makedirs('path/to/new/directory')
# 删除一个空目录
os.rmdir('new_directory')
# 删除一个文件
os.remove('file.txt')
# 重命名文件或目录
os.rename('old_name', 'new_name')
# 获取环境变量
print(os.environ['HOME'])
# 获取环境变量,如果不存在则返回默认值
print(os.getenv('HOME', 'default_value'))
# 设置环境变量
os.putenv('MY_VAR', 'my_value')
# 获取文件大小
print(os.path.getsize('file.txt'))
# 在 Unix 和 Linux 中
print(os.path.join("/path", "to", "file.txt")) # 输出: /path/to/file.txt
# 在 Windows 中
print(os.path.join("C:\\path", "to", "file.txt")) # 输出: C:\path\to\file.txt