Python中常用的os操作汇总


Posted in Python onNovember 05, 2020

Python自动的os库是和操作系统交互的库,常用的操作包括文件/目录操作,路径操作,环境变量操作和执行系统命令等。

文件/目录操作

  • 获取当前目录(pwd): os.getcwd()
  • 切换目录(cd): os.chdir('/usr/local/')
  • 列出目录所有文件(ls):os.listdir('/usr/local/')
  • 创建目录(mkdir):os.makedirs('/usr/local/tmp')
  • 删除目录(rmdir):os.removedirs('/usr/local/tmp') # 只能删除空目录,递归删除可以使用import shutil;shutil.rmtree('/usr/local/tmp')
  • 删除文件(rm):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操作汇总的详细内容,更多关于python os操作的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
八大排序算法的Python实现
Jan 28 Python
python在不同层级目录import模块的方法
Jan 31 Python
python生成器表达式和列表解析
Mar 10 Python
Python寻找两个有序数组的中位数实例详解
Dec 05 Python
基于python的ini配置文件操作工具类
Apr 24 Python
利用python和百度地图API实现数据地图标注的方法
May 13 Python
解决python中的幂函数、指数函数问题
Nov 25 Python
python实现简单井字棋游戏
Mar 04 Python
django 前端页面如何实现显示前N条数据
Mar 16 Python
python 在threading中如何处理主进程和子线程的关系
Apr 25 Python
5行Python代码实现图像分割的步骤详解
May 25 Python
通俗讲解python 装饰器
Sep 07 Python
Python Web项目Cherrypy使用方法镜像
Nov 05 #Python
Python实现异步IO的示例
Nov 05 #Python
Python requests HTTP验证登录实现流程
Nov 05 #Python
Python包资源下载路径报404解决方案
Nov 05 #Python
如何一键升级Python所有包
Nov 05 #Python
python实现磁盘日志清理的示例
Nov 05 #Python
Python常用外部指令执行代码实例
Nov 05 #Python
You might like
example1.php
2006/10/09 PHP
PHP中在数据库中保存Checkbox数据(1)
2006/10/09 PHP
使用PHP 5.0创建图形的巧妙方法
2010/10/12 PHP
PHP设计模式之抽象工厂模式实例分析
2019/03/25 PHP
JavaScript 继承的实现
2009/07/09 Javascript
页面右下角弹出提示框示例代码js版
2013/08/02 Javascript
jQuery之Deferred对象详解
2014/09/04 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
2014/12/20 Javascript
jQuery中$.extend()用法实例
2015/06/24 Javascript
禁用backspace网页回退功能的实现代码
2016/11/15 Javascript
JavaScript获取服务器端时间的方法
2016/11/29 Javascript
JavaScript 获取元素在父节点中的下标(推荐)
2017/06/28 Javascript
JS图片轮播与索引变色功能实例详解
2017/07/06 Javascript
JavaScript实现重力下落与弹性效果的方法分析
2017/12/20 Javascript
使用vue-cli(vue脚手架)快速搭建项目的方法
2018/05/21 Javascript
微信小程序收藏功能的实现代码
2020/06/19 Javascript
[02:37]2015国际邀请赛选手档案—LGD.Xiao8
2015/07/28 DOTA
python简单程序读取串口信息的方法
2015/03/13 Python
python实现自动更换ip的方法
2015/05/05 Python
搞笑的程序猿:看看你是哪种Python程序员
2015/06/12 Python
在django中使用自定义标签实现分页功能
2017/07/04 Python
Python中实例化class的执行顺序示例详解
2018/10/14 Python
浅谈python中拼接路径os.path.join斜杠的问题
2018/10/23 Python
Python字符串、列表、元组、字典、集合的补充实例详解
2019/12/20 Python
浅析python 通⽤爬⾍和聚焦爬⾍
2020/09/28 Python
python 获取字典特定值对应的键的实现
2020/09/29 Python
澳大利亚领先的在线美容商店:Facial Co
2017/10/22 全球购物
NYX Professional Makeup英国官网:美国平价专业彩妆品牌
2019/11/13 全球购物
建筑项目策划书
2014/01/13 职场文书
超市开学活动方案
2014/03/01 职场文书
开学典礼主持词
2014/03/19 职场文书
2014年党员自我评价材料
2014/09/22 职场文书
云冈石窟导游词
2015/02/04 职场文书
重阳节活动主持词
2015/07/04 职场文书
2019预备党员转正申请书模板2篇!
2019/08/07 职场文书
SQL Server使用导出向导功能
2022/04/08 SQL Server