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

【基础】os模块

前言

1、os是operation system(操作系统)的缩写;os模块就是python对操作系统操作接口的封装。os模块提供了多数操作系统的功能接口函数。(OS模块提供了与操作系统进行交互的函数)

2、操作系统属于Python的标准实用程序模块。该模块提供了使用依赖于操作系统的函数的便携式方法。

3、在自动化测试中,经常需要查找操作文件,比如说查找配置文件(从而读取配置文件的信息),查找测试报告(从而发送测试报告邮件),查找测试用例的Excel文件或者Yaml文件等。
在这里插入图片描述

os函数

1.当前路径及路径下的文件

os.getcwd() :查看当前所在的路径(当前脚本的上一级目录)

2.绝对路径
os.path.abspath(path) //返回当前文件位置的绝对路径
os.path.realpath(path) //返回当前文件位置的绝对路径
例如:
当前脚本所在的文件:

print(os.getcwd())
print(os.path.abspath(__file__))
print(os.path.realpath(__file__))
print(os.path.realpath('.'))
print(os.path.realpath('..'))

结果如下:

/Users/linda/Documents/PythonStudyNew/util
/Users/linda/Documents/PythonStudyNew/util/os_path.py
/Users/linda/Documents/PythonStudyNew/util/os_path.py
/Users/linda/Documents/PythonStudyNew/util
/Users/linda/Documents/PythonStudyNew

3、路径拼接

os.path.join(path1, path2, ...) :将入参的path进行组合,若其中有绝对路径,则之前的path将被删除。
 print(os.path.join(os.path.dirname(os.path.realpath(__file__)),"data.yaml"))

4.获取路径的文件夹路径部分

print(os.path.abspath(__file__))
=>/Users/linda/Documents/PythonStudyNew/util/os_path.py

print(os.path.dirname(path))//返回当前文件的目录(不包含当前文件)
=>/Users/linda/Documents/PythonStudyNew/util

5.获取路径的文件名

os.path.basename(path) //返回path中的文件名
 print(os.path.basename(os.path.realpath(__file__)))
 =》os_path.py

6.查看文件时间

 os.path.getmtime(path)  //返回文件或文件夹的最后修改时间,从新纪元到访问时的秒数。
 os.path.getatime(path)  //返回文件或文件夹的最后访问时间,从新纪元到访问时的秒数。
 os.path.getctime(path)  //返回文件或文件夹的创建时间,从新纪元到访问时的秒数。

7.查看文件大小

os.path.getsize(path) //返回文件的大小

8.查看文件是否存在

 os.path.exists(path)  //判断文件或者文件夹是否存在,返回True 或 False。【文件或文件夹的名字不区分大小写】

http://www.kler.cn/a/379626.html

相关文章:

  • 时间序列预测(十八)——实现配置管理和扩展命令行参数解析器
  • 微服务架构面试内容整理-领域驱动设计(DDD)
  • B2109 统计数字字符个数
  • 针对解决前后端BUG的个人笔记
  • 气象大模型学习笔记
  • 批量修改图片大小+删除空白页+手写签名
  • 2024年10款专业的PDF合并工具帮你实现高效办公。
  • 使用 Github 进行项目管理
  • Vue中props和data的优先级哪个更高?
  • 联丰策略股票交易市场上周五股票ETF市场紫金净流入68亿元
  • 通过自定义指令实现图片懒加载
  • 在VScode中配置C_C++环境
  • 使用nvm切换node版本失败
  • Python 一维列表基础语法
  • LM Head weights;ChatGPT-3词汇量:175,000;llama7b 词汇量,词嵌入维度:4096
  • 【LeetCode】移除链表中等于设定值的元素、反转链表
  • 创维E900-S_华为EC6108V9_v9u_海思hi3798mv100华为系统优盘刷机固件包
  • CesiumJS 案例 P20:监听鼠标滚轮、监听鼠标左键按下与松开、监听鼠标右键按下与松开、监听鼠标左击落点
  • Linux:线程安全的单例模式
  • 进程的概念
  • Vue学习之路16----pinia
  • 家具产品的耐用性新标准,矫平机为家具制造提供新保障
  • SQL中`ORDER BY`、`SORT BY`、`DISTRIBUTE BY`、`GROUP BY`、`CLUSTER BY`的区别详解
  • 什么是严肃游戏,严肃游戏本地化的特点是什么?
  • 【C语言刷力扣】3216.交换后字典序最小的字符串
  • 第十五章 Vue工程化开发及Vue CLI脚手架