当前位置: 首页 > news >正文

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

相关文章:

  • 分布式定时任务(xxl-job)
  • FreeRTOS学习笔记【10】-----任务上下文切换
  • 学生管理系统微服务方式实现
  • SQLAlchemy 2.x 异步查询方法比较
  • Rust 学习笔记:函数和控制流
  • tcp 和http 网络知识
  • 详解 Servlet 处理表单数据
  • 向量数据库实践:存储和检索向量数据
  • synchronization
  • 国产升压芯片SL4013能否支持输入三节锂电11V-12.6V升压至24V应用参数?
  • [特殊字符] Docker 从入门到实战:全流程教程 + 项目部署指南(含镜像加速)
  • uniapp-商城-38-shop 购物车 选好了 进行订单确认4 配送方式1
  • C++23 新特性深度落地与最佳实践
  • 79. 单词搜索
  • 图论---染色法(判断是否为二分图)
  • 深入解析 SMB 相关命令:smbmap、smbclient、netexec 等工具的使用指南
  • Python爬虫实战:获取网yi新闻网财经信息并做数据分析,以供选股做参考
  • 基于51单片机的超声波液位测量与控制系统
  • PMIC PCA9450 硬件原理全解析:为 i.MX 8M 平台供电的“大脑”
  • 23种设计模式-行为型模式之责任链模式(Java版本)
  • 我国首次实现地月距离尺度卫星激光测距
  • 猿辅导回应一员工离世:发生意外期间其所在团队没有安排加班
  • 今年五一,贵州一脸“爆相”
  • 荣盛发展:拟以酒店、代建等轻资产板块业务搭建平台,并以其股权实施债务重组
  • 去年9月就提出辞任中国乒协主席,刘国梁谈辞职原因
  • 最高法:家长以监督为名虚构事实诋毁学校的,应承担侵权责任