OS库的常用操作

os 模块是 Python 标准库的一部分,提供了丰富的功能,用于与操作系统进行交互。以下是一些常用的 os 模块操作,按功能分类介绍:

1. 文件和目录操作

1.1 创建目录
import os

# 创建单个目录
os.mkdir('new_directory')

# 创建多级目录
os.makedirs('new_directory/sub_directory')
1.2 删除目录
# 删除单个目录
os.rmdir('new_directory')

# 删除多级目录
os.removedirs('new_directory/sub_directory')
1.3 列出目录内容
# 列出指定目录下的所有文件和目录
entries = os.listdir('path/to/directory')
print(entries)
1.4 获取文件和目录信息
# 获取文件或目录的绝对路径
abs_path = os.path.abspath('file.txt')
print(abs_path)

# 检查路径是否存在
exists = os.path.exists('file.txt')
print(exists)

# 检查路径是否为文件
is_file = os.path.isfile('file.txt')
print(is_file)

# 检查路径是否为目录
is_dir = os.path.isdir('path/to/directory')
print(is_dir)

# 获取文件大小(以字节为单位)
file_size = os.path.getsize('file.txt')
print(file_size)
1.5 重命名文件或目录
# 重命名文件或目录
os.rename('old_name.txt', 'new_name.txt')
1.6 删除文件
# 删除文件
os.remove('file.txt')

2. 路径操作

2.1 拼接路径
# 拼接路径
path = os.path.join('path', 'to', 'file.txt')
print(path)
2.2 分割路径
# 分割路径为目录和文件名
directory, filename = os.path.split('path/to/file.txt')
print(directory)  # 输出: path/to
print(filename)   # 输出: file.txt

# 分割文件名和扩展名
filename, extension = os.path.splitext('file.txt')
print(filename)   # 输出: file
print(extension)  # 输出: .txt

3. 环境变量操作

3.1 获取环境变量
# 获取环境变量
home_dir = os.getenv('HOME')
print(home_dir)
3.2 设置环境变量
# 设置环境变量
os.environ['MY_VARIABLE'] = 'my_value'

4. 当前工作目录操作

4.1 获取当前工作目录
# 获取当前工作目录
current_dir = os.getcwd()
print(current_dir)
4.2 更改当前工作目录
# 更改当前工作目录
os.chdir('path/to/new/directory')

5. 文件遍历

5.1 遍历目录树
# 遍历目录树
for root, dirs, files in os.walk('path/to/directory'):
    print(f'当前目录: {root}')
    print(f'子目录: {dirs}')
    print(f'文件: {files}')

6. 其他常用操作

6.1 获取系统信息
# 获取操作系统名称
os_name = os.name
print(os_name)  # 输出: 'posix' (Linux/Mac) 或 'nt' (Windows)

# 获取当前用户的登录名
username = os.getlogin()
print(username)
6.2 执行系统命令
# 执行系统命令
output = os.system('ls -l')  # 在 Linux/Mac 上列出目录内容
print(output)

示例代码

以下是一个综合示例,展示了如何使用 os 模块进行常见的文件和目录操作:

import os

# 创建目录
os.makedirs('example_directory/sub_directory')

# 列出目录内容
entries = os.listdir('example_directory')
print(entries)

# 获取文件和目录信息
file_path = os.path.join('example_directory', 'file.txt')
with open(file_path, 'w') as f:
    f.write('Hello, world!')

print(os.path.exists(file_path))  # 输出: True
print(os.path.isfile(file_path))  # 输出: True
print(os.path.getsize(file_path))  # 输出: 13

# 重命名文件
os.rename(file_path, os.path.join('example_directory', 'new_file.txt'))

# 删除文件
os.remove(os.path.join('example_directory', 'new_file.txt'))

# 删除目录
os.rmdir('example_directory/sub_directory')
os.rmdir('example_directory')

总结

os 模块提供了丰富的功能,用于与操作系统进行交互,包括文件和目录操作、路径操作、环境变量操作、当前工作目录操作、文件遍历等。这些功能在处理文件和目录时非常有用,可以帮助你更高效地完成任务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值