Python 的 os
库提供了一种方便的使用操作系统相关功能的方式,它允许你与文件系统、进程管理、环境变量等进行交互。以下是 os
库的一些常见应用及对应的案例。
1. 文件和目录操作
1.1 获取当前工作目录
os.getcwd()
函数用于返回当前 Python 脚本的工作目录。
import os
current_dir = os.getcwd()
print(f"当前工作目录是: {current_dir}")
1.2 改变工作目录
os.chdir()
函数可以改变当前的工作目录。
import os
# 获取当前工作目录
current_dir = os.getcwd()
print(f"当前工作目录: {current_dir}")
# 改变工作目录
new_dir = "/path/to/new/directory" # 替换为实际目录路径
os.chdir(new_dir)
print(f"新的工作目录: {os.getcwd()}")
1.3 创建目录
os.mkdir()
用于创建单个目录,os.makedirs()
可以递归创建多级目录。
import os
# 创建单个目录
single_dir = "single_directory"
try:
os.mkdir(single_dir)
print(f"成功创建目录: {single_dir}")
except FileExistsError:
print(f"目录 {single_dir} 已存在")
# 创建多级目录
multi_dir = "parent_dir/child_dir"
try:
os.makedirs(multi_dir)
print(f"成功创建多级目录: {multi_dir}")
except FileExistsError:
print(f"多级目录 {multi_dir} 已存在")
1.4 删除目录
os.rmdir()
用于删除空目录,若要删除非空目录,可以使用 shutil.rmtree()
函数。
import os
# 删除空目录
empty_dir = "single_directory"
try:
os.rmdir(empty_dir)
print(f"成功删除目录: {empty_dir}")
except FileNotFoundError:
print(f"目录 {empty_dir} 不存在")
except OSError:
print(f"目录 {empty_dir} 非空,无法删除")
1.5 列出目录内容
os.listdir()
函数返回指定目录中的所有文件和子目录的名称列表。
import os
# 获取当前目录下的所有文件和目录
files_and_dirs = os.listdir()
for item in files_and_dirs:
print(item)
2. 文件路径操作
2.1 拼接路径
os.path.join()
用于将多个路径组件拼接成一个完整的路径,它会根据操作系统自动处理路径分隔符。
import os
# 拼接路径
base_dir = "/home/user"
sub_dir = "documents"
file_name = "example.txt"
full_path = os.path.join(base_dir, sub_dir, file_name)
print(f"拼接后的路径: {full_path}")
2.2 获取文件基本名称和目录名称
os.path.basename()
返回路径中的文件名,os.path.dirname()
返回路径中的目录名。
import os
path = "/home/user/documents/example.txt"
file_name = os.path.basename(path)
dir_name = os.path.dirname(path)
print(f"文件名: {file_name}")
print(f"目录名: {dir_name}")
2.3 检查文件或目录是否存在
os.path.exists()
用于检查指定的文件或目录是否存在。
import os
path = "/home/user/documents/example.txt"
if os.path.exists(path):
print(f"{path} 存在")
else:
print(f"{path} 不存在")
3. 进程管理
3.1 执行系统命令
os.system()
函数可以在 Python 脚本中执行系统命令。
import os
# 执行系统命令,例如列出当前目录内容
command = "ls -l"
os.system(command)
4. 环境变量操作
4.1 获取环境变量
os.environ
是一个包含当前环境变量的字典,你可以通过键来访问特定的环境变量。
import os
# 获取系统的 PATH 环境变量
path_variable = os.environ.get('PATH')
print(f"PATH 环境变量的值: {path_variable}")
4.2 设置环境变量
可以通过修改 os.environ
字典来设置新的环境变量或修改现有环境变量的值。
import os
# 设置新的环境变量
os.environ['MY_VARIABLE'] = 'my_value'
print(f"MY_VARIABLE 的值: {os.environ.get('MY_VARIABLE')}")
这些案例展示了 os
库在不同场景下的应用,你可以根据实际需求灵活使用这些功能。