Python os模块常用操作详解:文件、路径与环境变量
本文汇总Python中os模块的常用功能,涵盖文件与目录的创建、删除及遍历,路径的拼接、分割与判断,环境变量的读取与设置,以及系统命令的执行方法。通过具体代码示例,帮助开发者快速掌握Python中与操作系统交互的核心操作。
Python os模块概述
Python内置的os库提供了与操作系统进行交互的功能,日常开发中常用于处理文件和目录、操作路径、管理环境变量以及执行系统命令等任务。
文件与目录操作
文件与目录的基本操作
- 获取当前工作目录:
os.getcwd() - 切换当前工作目录:
os.chdir('/usr/local/') - 列出指定目录下的所有文件:
os.listdir('/usr/local/') - 创建新目录:
os.makedirs('/usr/local/tmp') - 删除目录:
os.removedirs('/usr/local/tmp')# 注意,此方法仅能删除空目录。若需递归删除非空目录,可借助import shutil;shutil.rmtree('/usr/local/tmp') - 删除单个文件:
os.remove('/usr/local/a.txt') - 递归遍历目录及其子目录:
os.walk()
目录遍历示例
示例:遍历/usr/local目录及其所有子目录,打印出每个文件和目录的完整路径。
import os
for root, dirs, files in os.walk("/usr/local", topdown=False):
for name in files:
print('文件:', os.path.join(root, name))
for name in dirs:
print('目录:', os.path.join(root, name))
路径处理技巧
路径相关操作
- 获取当前Python脚本的文件名:
__file__ - 获取文件所在目录路径:
os.path.basename(__file__)# 结果不包含文件名本身 - 获取文件的绝对路径:
os.path.abspath(__file__)# 结果包含完整的文件名 - 获取文件所在的目录路径:
os.path.dirname(__file__) - 分割路径和文件名:
os.path.split('/usr/local/a.txt')# 返回一个包含[路径, 文件名]的元组 - 分割文件名和扩展名:
os.path.splitext('a.txt')# 返回一个包含[文件名, 扩展名]的元组,例如['a', '.txt'] - 判断指定路径是否存在:
os.path.exists('/usr/local/a.txt') - 判断指定路径是否为文件:
os.path.isfile('/usr/local/a.txt') - 判断指定路径是否为目录:
os.path.isdir('/usr/local/a.txt') - 安全地组装路径:
os.path.join('/usr', 'local', 'a.txt')
路径组装实战
示例:获取项目根路径及报告文件路径 假设项目目录结构如下所示。
project/
data'
reports/
report.html
testcases/
config.py
run.py
在run.py脚本中获取项目根路径和report.html文件的路径。
# filename: run.py
import os
base_dir = os.path.dirname(__file__) # __file__是run.py文件,os.path.dirname获取到其所在的目录project即项目根路径
report_file = os.path.join(base_dir, 'reports', 'report.html') # 使用系统路径分隔符('\')连接项目根目录base_dir和'reports'及'report.html'得到报告路径
print(report_file)
环境变量管理
环境变量操作
- 获取环境变量:可通过os.environ.get('PATH')或os.getenv('PATH')实现。
- 设置环境变量:例如通过os.environ['MYSQL_PWD']='123456'进行赋值。
系统命令执行
执行系统命令
执行系统命令:os.system("jmeter -n -t /usr/local/demo.jmx") # 该方法无法直接获取命令的标准输出信息。如需捕获运行时的屏幕输出,建议使用subprocess模块。
作者: 韩志超
出处:https://www.cnblogs.com/superhin/p/13880748.html
更多关于python的相关知识,请关注python客栈
以上就是Python中常用的os操作汇总的详细内容,更多关于python os操作的资料请关注本站其它相关文章!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。










