os
Python 的 os 模块提供了与操作系统交互的功能,包括文件和目录操作、环境变量管理、进程管理等。以下是对 os 模块的详细介绍,包括其主要功能和常用方法。通过这个模块,Python 可以与操作系统进行有效的交互,处理各种系统级的任务。对于更复杂的文件操作,os 模块通常与 shutil 模块结合使用。
主要功能
1. 文件和目录操作
获取当前工作目录
os.getcwd(): 返回当前工作目录的绝对路径。
pythonimport os current_dir = os.getcwd() print(current_dir) # 输出当前工作目录1
2
3
4改变当前工作目录
os.chdir(path): 改变当前工作目录到指定路径。- 不返回任何内容
pythonos.chdir('/path/to/directory')1列出目录中的文件和子目录
os.listdir(path): 返回指定目录中的文件和目录列表。- 返回
list
pythonfiles = os.listdir('.') print(files) # 输出当前目录下的文件和子目录 ['.idea', 'main.py']1
2创建和删除目录
os.mkdir(path): 创建一个新目录。- 不返回任何内容
os.rmdir(path): 删除一个空目录。- 不返回任何内容
- 如果没有该目录则会报错
pythonos.mkdir('new_folder') # 创建新目录 os.rmdir('new_folder') # 删除目录1
2删除文件
os.remove(path): 删除指定文件。
pythonos.remove('file.txt') # 删除文件1重命名文件或目录
os.rename(old_name, new_name): 重命名文件或目录。
pythonos.rename('old_name.txt', 'new_name.txt') # 重命名文件1
2. 路径操作
路径拼接
os.path.join(path, *paths): 将一个或多个路径组合成一个路径。
pythonfull_path = os.path.join('folder', 'file.txt') print(full_path) # 输出 'folder/file.txt'(在Windows上为 'folder\file.txt')1
2获取文件名和目录名
os.path.basename(path): 返回路径中的文件名。os.path.dirname(path): 返回路径中的目录名。
pythonprint(os.path.basename('/path/to/file.txt')) # 输出 'file.txt' print(os.path.dirname('/path/to/file.txt')) # 输出 '/path/to'1
2检查路径是否存在
os.path.exists(path): 检查指定路径是否存在。os.path.isfile(path): 检查路径是否为文件。os.path.isdir(path): 检查路径是否为目录。
pythonprint(os.path.exists('file.txt')) # 输出 True 或 False1
3. 环境变量
获取和设置环境变量
os.environ: 字典形式的环境变量。os.getenv(key): 获取指定环境变量的值。os.putenv(key, value): 设置环境变量。
pythonprint(os.getenv('HOME')) # 输出 HOME 环境变量的值1
4. 进程管理
获取当前进程ID
os.getpid(): 返回当前进程的 ID。
pythonprint(os.getpid()) # 输出当前进程的 ID1执行系统命令
os.system(command): 执行系统命令。
pythonos.system('ls') # 在类Unix系统上列出目录内容1
示例
创建和遍历目录
python
import os
# 创建新目录
os.mkdir('example_dir')
# 遍历目录
for file in os.listdir('example_dir'):
print(file)1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
处理文件路径
python
import os
file_path = os.path.join('example_dir', 'file.txt')
print(file_path) # 输出 'example_dir/file.txt'1
2
3
4
2
3
4
< ~/ > MyNote