Python - OS模块+sys模块

一、OS模块基本用法:

import osprint(os.getcwd()) # 获取当前工作目录os.chdir('data') # 改变当前脚本工作目录;相当于终端里面的cd命令
print(os.getcwd()) # 获取当前工作目录

运行结果:

D:\__TC22008_VBF\FOTA-vFlash-AutoTest
D:\__TC22008_VBF\FOTA-vFlash-AutoTest\data

print(os.listdir())# 获取指定目录下的所有文件和文件夹,包括隐藏文件,并返回列表
print(os.listdir('..')) #  上一级目录

运行结果:

['a.txt', 'b.txt']
['.idea', 'a.txt.swap', 'c.txt', 'd.txt', 'data', 'data.txt', 'demo-start.py', 'demo.py', 'DsView_文件.jpg', 'FOTA-vFlash - 副本.py', 'FOTA-vFlash-DSView.py', 'FOTA-vFlash.py', 'FOTA-vFlash_no.py', 'new.py', 'save-one.png', 'save.jpg', 'swapy64bit.exe', 'user.txt']

os.mkdir('dirname') # 创建文件夹;相当于终端里面的mkdir dirname,这里直接用相对路径了

os.makedirs('dirname1/dirname2/dirname3') # 递归创建多层目录

os.remove('a.txt.swap')  # 删除一个文件

os.rmdir('dirname')  # 删除单级空目录,若目录不为空则无法删除,则报错

os.rename('oldname','newname') # 重命名文件/目录

os.environ # 获取系统环境变量

os.name # 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'

os.path.split(path) # 将path分割成目录和文件名,返回元组
os.path.dirname(path) # 返回path的父级目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) # 返回path最后的文件名。如path以/或\结尾,那么就会返回空值。即
os.path.split(path)的第二个元素

print(os.path.split('D:\__TC22008_VBF\FOTA-vFlash-AutoTest\c.txt'))
print(os.path.dirname('D:\__TC22008_VBF\FOTA-vFlash-AutoTest\c.txt'))
print(os.path.basename('D:\__TC22008_VBF\FOTA-vFlash-AutoTest\c.txt'))

运行结果:

('D:\\__TC22008_VBF\\FOTA-vFlash-AutoTest', 'c.txt')

D:\__TC22008_VBF\FOTA-vFlash-AutoTest

c.txt

os.path.exists(path) # 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) # 如果path是绝对路径,返回True
os.path.isfile(path) # 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) # 如果path是一个存在的目录,则返回True。否则返回False

print(os.path.exists('D:\__TC22008_VBF\FOTA-vFlash-AutoTest\c.txt'))
print(os.path.isabs('D:\__TC22008_VBF\FOTA-vFlash-AutoTest\c.txt'))
print(os.path.isfile('D:\__TC22008_VBF\FOTA-vFlash-AutoTest\c.txt'))
print(os.path.isdir('D:\__TC22008_VBF\FOTA-vFlash-AutoTest'))

运行结果:

True
True
True
True

os.path.getsize(path) # 返回path的大小

print(os.path.getsize('D:\__TC22008_VBF\FOTA-vFlash-AutoTest\demo-start.py'))

运行结果:

1283

二、sys模块

sys.argv  # 获取通过终端传过来的参数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/26747.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

conda虚拟环境报错总结

创建conda虚拟环境 文章前景(小白篇)为什么要安装Anaconda??? Conda创建虚拟环境遇到的错误总结错误1:jupyter 里面没有显示我的虚拟环境怎么办?错误2:配置pycharm的时候conda虚拟环…

破解发展难题 台山这家合作社以农业社会化服务助推乡村振兴

风吹稻田千层浪,眼下,台山四九镇的早稻长势喜人,沉甸甸的稻穗迎风而动,已进入破口抽穗的关键期,即将在6月底陆续迎来丰收。在台山市明华汇种养专业合作社管理的稻田里,合作社负责人梁明喜正仔细观察着稻苗的…

山东大学软件学院项目实训-创新实训-基于大模型的旅游平台(三十二)- 微服务(12)

目录 12.8 RestClient查询文档 12.8.1 快速入门 12.8.2 match, term,bool,range查询 12.8.3 排序和分页 12.8.4 高亮 12.8 RestClient查询文档 12.8.1 快速入门 Testvoid testMatchALL() throws IOException {// 1. 准备requestSearchReq…

以bert为例,了解Lora是如何添加到模型中的

以bert为例,了解Lora是如何添加到模型中的 一.效果图1.torch.fx可视化A.添加前B.添加后 2.onnx可视化A.添加前B.添加后 3.tensorboard可视化A.添加前B.添加后 二.复现步骤1.生成配置文件(num_hidden_layers1)2.运行测试脚本 本文以bert为例,对比了添加Lora模块前后的网络结构图…

Linux下的GPIO编程

目录 一、前言 二、sysfs方式 1、sysfs简介 2、基本目录结构 3、编号计算 4、sysfs方式控制GPIO 三、libgpiod库 1、libgpiod库简介 2、API函数 四、LED灯编程 一、前言 在Linux下,我们通常使用 sysfs 和 libgpiod库 两种方式进行控制GPIO,目前…

DDei在线设计器-属性编辑器

DDei-Core-属性编辑器 DDei-Core-属性编辑器插件包含了文本、大文本、数值、下拉、单选、勾选以及颜色等属性编辑。 图形和属性共同构成一个完整的定义,属性编辑器就是编辑属性值的控件。当选中图形实例时,属性面板就会展现当前实例的所有属性以及属性编…

m4s转mp3——B站缓存视频提取音频

前言 しかのこのこのここしたんたん(鹿乃子乃子虎视眈眈)非常之好,很适合当闹钟,于是缓存了视频,想提取音频为mp3 直接改后缀可乎?格式转换工具? 好久之前有记录过转MP4的: m4s转为…

美国空军发布类ChatGPT产品—NIPRGPT

6月11日,美国空军研究实验室(AFRL)官网消息,空军部已经发布了一款生成式AI产品NIPRGPT。 据悉,NIPRGPT是一款类ChatGPT产品,可生成文本、代码、摘要等内容,主要为为飞行员、文职人员和承包商提…

文件没有权限问题:cannot create /opt/apollo/neo/data/log/monitor.log: Permission denied

问题描述 执行 aem bootstrap start --plus 命令启动 Dreamview 提示错误: /bin/sh: 1: cannot create /opt/apollo/neo/data/log/monitor.log: Permission denied [ERROR] Failed to start Dreamview. Please check /opt/apollo/neo/data/log/dreamview.log or /op…

ArrayList和LinkedList的区别!!!

总结: 1、数据结构的实现 ArrayList:动态数组。 LinkedList:双向链表。 2、时间复杂度不同 ArrayList:O(1) LinkedList: O(n) ①:随机访问---- ArrayList > LinkedList (ArrayList采用下标&#xff0…

ARM-V9 RME(Realm Management Extension)系统架构之调试

安全之安全(security)博客目录导读 本节中,“RMSD外部调试”一词用于描述任何系统或PE的外部调试功能,这些功能能够实现以下目的: 监控或修改RMSD行为。对Realm PAS或Realm安全状态的外部访问。 本节中,“Root外部调试”一词用于…

C++ 实现HTTP的客户端、服务端demo和HTTP三方库介绍

本文使用C模拟实现http的客户端请求和http的服务端响应功能,并介绍几种封装HTTP协议的三方库。 1、实现简单HTTP的服务端功能 本程序使用C tcp服务端代码模拟HTTP的服务端,服务端返回给客户端的消息内容按照HTTP协议的消息响应格式进行了组装。 demo如…

PC端剪映6.0免vip版本,功能随便用

下载解压后点击“JianyingPro.exe”图标即可使用,使用过程中无需登陆账号。操作很简单。 链接:https://pan.baidu.com/s/14bon1Ta9GOUFyUZDa2X3TA?pwd8h2b 提取码:8h2b

采用ava+B/S架构开发的工业级UWB(Ultra-Wideband)室内定系统源码UWB定位系统技术接口及技术特点

采用avaB/S架构开发的工业级UWB(Ultra-Wideband)室内定系统源码UWB定位系统技术接口及技术特点 UWB(Ultra-Wideband)定位技术本身并不直接连接蓝牙或其他无线通信技术进行定位。然而,在实际应用中,UWB定位技…

怎么用住宅代理IP?使用住宅代理IP有哪些好处?

如何使用住宅代理IP: 使用住宅代理IP主要涉及以下几个步骤: 选择合适的代理IP供应商: 考虑供应商的可靠性、代理IP的质量、速度、稳定性以及价格。选择信誉良好且服务稳定的供应商,确保获得高质量的代理IP服务。配置代理IP&#…

代理IP常见问题解答,新手必看手册

代理IP在互联网数据收集和业务开展中发挥着重要作用,它充当用户客户端和网站服务器之间的“屏障”,可以保护用户的真实IP地址,并允许用户通过不同的IP地址进行操作。然而,在使用代理IP的过程中,用户经常会遇到一些问题…

vue 中多个表单元素控一个校验规则

1. 场景一 <el-form-itemlabel"确认时长方式"prop"preSubResourceDurationDay" ><div class"confirmDurationDay">最晚使用日期前<el-input-numberv-model"form.preSubResourceDurationDay":precision"0"cla…

axure使用中继器画柱状图

源文件在顶部。 在axure通过读取中继器中的数据来画柱状图&#xff0c;如下图&#xff1a; 1&#xff09;创建一个中继器&#xff0c;在里面创建两列&#xff1a;1列是柱状图底部的名称、2列是柱的高度&#xff0c;如下图&#xff1a; 2&#xff09;双击中继器&#xff0c;画一…

ansible安装wordpress

1.回顾 yum安装wordpress 查看别名 [rootlocalhost ~]# type ll ll 是 ls -l --colorauto 的别名设置别名 aliasyum install -y alias ymyum install -y# 使用别名 ym nginx# 取消别名 unalias ym# 基于LNMP做一个wordpressnginx mysql 5.7 PHP 7.4#1、初始化过程 修改主机名…

【code-server】Code-Server 安装部署

Code-Server 安装部署 1.环境准备 可以参考 https://coder.com/docs/code-server/install code-server的安装流程进行安装&#xff0c;主机环境是 Centos7 建议使用 docker 方式进行安装&#xff0c;可能会出现如下报错&#xff0c;需要升级 GNC 的版本&#xff0c;由于影响交…