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

萌新学 Python 之 os 模块

os 模块:主要提供程序与操作系统进行交互的接口

先导入模块:import os

1. os.listdir(),获取当前目录的文件,返回到列表中

2. os.mkdir('文件目录', mode = 0o777),创建目录,777 表示读写程序

在当前目录下创建新目录,当文件已存在时,无法创建该文件,程序报错

3. os.makedirs('文件目录', mode = 0o777, exist_ok = False),创建多级目录

在当前目录下创建多级目录,当文件已存在时,无法创建该文件,程序报错

exist_ok = True 时,如果文件存在,则忽略错误

4. os.path 模块,主要用来处理文件路径的函数

exists(路径),判断路径是否存在,存在返回 True

isdir(目录),判断目录是否存在,存在返回 True

isfile(文件),判断文件是否存在,存在返回 True

abspath(路径),输出当前文件的绝对路径

dirname(path),输出当前路径文件的目录

import os
# os.listdir(),获取当前目录的文件,返回到列表中
print(os.listdir('.'))      # . 表示当前路径
print(os.listdir('../'))    # ../ 表示上一级目录
print(os.listdir('../..'))  # ../.. 表示上上一级目录# os.mkdir('文件目录', mode = 0o777),创建目录,777表示读写程序
# 在当前目录下创建新目录,当文件已存在时,无法创建该文件,程序报错
os.mkdir('./test', mode=0o777)
# 在已有目录下创建新目录
os.mkdir('./test/abc', mode=0o777)# os.makedirs('文件目录', mode = 0o777, exist_ok = False),创建多级目录
# 在当前目录下创建多级目录,当文件已存在时,无法创建该文件,程序报错
os.makedirs('a/b/c')
# 当 exist_ok = True 时,如果文件存在,则忽略错误
os.makedirs('a/b/c', mode=0o777, exist_ok=True)# os.path 模块,主要用来处理文件路径的函数
# exists(路径),判断路径是否存在,存在返回 True
print(os.path.exists(r'a/b/c'))
# isdir(目录),判断目录是否存在,存在返回 True
print(os.path.isdir(r'a/b/c'))
path = r'D:\Python'
print(os.path.isdir(path))
# isfile(文件),判断文件是否存在,存在返回 True
print(os.path.isfile(r'./demo.txt'))
# abspath(路径),输出当前文件的绝对路径
print(os.path.abspath(r'demo'))                                    # D:\PycharmProjects\testProjects\demo
# dirname(path),输出当前路径文件的目录
print(os.path.dirname(r'D:\PycharmProjects\testProjects\demo'))    # D:\PycharmProjects\testProjects

详情可见Python os.path 模块

Python 的 sys 库是一种内建模块,可对 Python 的运行环境进行访问和操作

关于 sys 模块,借鉴大佬的:

相关文章:

萌新学 Python 之 os 模块

os 模块:主要提供程序与操作系统进行交互的接口 先导入模块:import os 1. os.listdir(),获取当前目录的文件,返回到列表中 2. os.mkdir(文件目录, mode 0o777),创建目录,777 表示读写程序 在当前目录下…...

IPoIB源码深度解析:如何基于TCP/IP协议栈实现高性能InfiniBand通信

一、IPoIB的核心设计理念 IPoIB(IP over InfiniBand)是一种在InfiniBand网络上承载IP流量的技术,其核心目标是在不修改上层应用的前提下,利用InfiniBand的高带宽和低延迟特性。与自定义协议栈不同,IPoIB通过深度集成到Linux内核TCP/IP协议栈中,将InfiniBand设备抽象为标…...

本地部署阿里万象2.1文生视频模型(Wan2.1-T2V)完全指南

在生成式AI技术爆发式发展的今天,阿里云开源的万象2.1(Wan2.1)视频生成模型,为创作者提供了从文字/图像到高清视频的一站式解决方案。本文针对消费级显卡用户,以RTX 4060 Ti 16G为例,详解本地部署全流程与性能调优方案,涵盖环境配置、多模型选择策略、显存优化技巧及实战…...

information_schema.processlist 表详解

information_schema.processlist 表(或 SHOW PROCESSLIST; 命令)用于查看 MySQL 当前所有的连接进程,帮助管理员监控数据库活动并排查性能问题。以下是该表的字段及其具体含义: 🔹 information_schema.processlist 字段…...

P8623 [蓝桥杯 2015 省 B] 移动距离

P8623 [蓝桥杯 2015 省 B] 移动距离 题目 解析代码 题目 解析 完了完了T.T,这个题我做了20分钟 解题思路就是分组,但是编写的时候最好把边界值过一遍【题目提供的测试数据肯定是最好通过的数据,需要你自己过一遍特殊数据,然后再…...

2025年Linux主力系统选择指南:基于最新生态的深度解析(附2025年发行版对比速查表)

Linux发行版生态在2025年持续演进,既有经典系统的迭代升级,也有新兴项目的崛起。本文结合最新行业动态,从个人用户到企业场景,梳理主力系统选择策略,助你找到最适合的Linux发行版。 一、新手友好型:平滑过渡…...

[密码学实战]Java实现国密(SM2)密钥协商详解:原理、代码与实践

一、代码运行结果 二、国密算法与密钥协商背景 2.1 什么是国密算法? 国密算法是由中国国家密码管理局制定的商用密码标准,包括: SM2:椭圆曲线公钥密码算法(非对称加密/签名/密钥协商)SM3:密码杂凑算法(哈希)SM4:分组密码算法(对称加密)2.2 密钥协商的意义 在安全…...

015--基于STM32F103ZET6的智能风扇设计

1.实物视频演示 智能风扇演示视频 2.程序代码讲解 STM32F103ZET6智能风扇_哔哩哔哩_bilibili 3源代码获取 https://download.csdn.net/download/weixin_41011452/90440545...

基于YOLO11深度学习的遥感视角农田检测与分割系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分割、人工智能

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…...

RBF神经网络+NSGAII多目标优化算法,工艺参数优化、工程设计优化(Matlab)

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.RBF神经网络NSGAII多目标优化算法(Matlab完整源码和数据) 多目标优化是指在优化问题中同时考虑多个目标的优化过程。在多目标优化中,通常存在多个冲突的目标,即改善一…...

Zookeeper(79)如何进行Zookeeper的监控?

对 Zookeeper 进行监控是确保其高可用性和性能的关键步骤。监控 Zookeeper 通常包括以下几个方面: 健康检查:检查 Zookeeper 节点是否在线。性能指标:监控关键性能指标,如请求延迟、事务处理量等。日志监控:监控 Zook…...

运动想象 (MI) 分类学习系列 (17) : CCSM-FT

运动想象分类学习系列:用于运动图像 EEG 信号解码的跨通道特定互特征迁移学习 0. 引言1. 主要贡献2. 方法2.1 跨通道特定互特征迁移学习 (CCSM-FT) 网络2.2 功能转移:2.3 特征转移2.4 参数选择3. 结果4. 分析4.1 训练技巧分析4.2 特征转移分析5. 总结欢迎来稿论文地址:http…...

start DL from stratch (2)!!!

start DL from stratch &#xff08;2&#xff09;!!! 一、CPU and GPUcpuGPU安培架构爱达洛夫莱斯架构 二、使用conda创建一个新的虚拟环境三、autodl操作先知Linux复习目录文件和数据上传对于整个镜像的操作守护进程Tips 四、autodl租用创建实例<big>没有所需要的版本的…...

【深入浅出:Core-JS Legacy 的降级兼容指南】

深入浅出&#xff1a;Core-JS Legacy 的降级兼容指南 &#x1f6e0;️ &#x1f30d; 背景与核心概念 为什么需要 Polyfill&#xff1f; 随着 ECMAScript 标准的快速迭代&#xff08;ES6/ES2015&#xff09;&#xff0c;现代浏览器对新特性的支持存在碎片化问题。旧版浏览器&am…...

通义灵码插件安装入门教学 - IDEA(安装篇)

在开发过程中&#xff0c;使用合适的工具和插件可以极大地提高我们的工作效率。今天&#xff0c;我们将详细介绍如何在 IntelliJ IDEA 中安装并配置通义灵码插件&#xff0c;这是一款旨在提升开发者效率的实用工具。无论你是新手还是有经验的开发者&#xff0c;本文都将为你提供…...

STM32之时钟树

左边是时钟产生电路&#xff0c;右边是时钟分配电路。中间的SYSCLK就是系统时钟72MHz&#xff0c;在产生电路有四个时钟源&#xff0c;分别是内部8MHz高速RC振荡器&#xff0c;外部的4-16MHz高速石英晶体振荡器&#xff0c;这个一般接8MHz,第三个是外部的32.768kHz低速晶振&…...

Unity插件-Mirror使用方法(一)Mirror介绍

目录 一、使用介绍 二、插件介绍 1、简述 2、核心功能与特点 基于组件的高层抽象 服务器-客户端架构 序列化与同步 可扩展性与灵活性 跨平台支持 社区与生态 3、典型应用场景 4、基本使用示例 安装 设置 NetworkManager 同步变量与 RPC 5、优缺点对比 6、为什…...

HVAC 设计:使用 Ansys Discovery 探索更好的设计

通过 Ansys Discovery 及其 2025 年新功能利用 CFD&#xff0c;通过 Computational Insights 应对 HVAC 行业的挑战。 挑战 HVAC 行业在设计高效可靠的管道系统方面面临多项挑战&#xff1a; 压力损失&#xff1a;设计不当的管道会增加能耗并降低热性能。复杂的几何形状&…...

ChatGPT 提示词框架

作为一个资深安卓开发工程师&#xff0c;我们在日常开发中经常会用到 ChatGPT 来提升开发效率&#xff0c;比如代码优化、bug 排查、生成单元测试等。 但要想真正发挥 ChatGPT 的潜力&#xff0c;我们需要掌握一些提示词&#xff08;Prompt&#xff09;的编写技巧&#xff0c;并…...

004-利用Docker安装Mysql

利用Docker安装Mysql 一、在镜像仓库找到 Mysql1.镜像仓库地址2.复制命令3.下载Mysql镜像4.查看镜像 二、创建实例并启动三、用本地工具连接数据库四、设置 Mysql 配置 一、在镜像仓库找到 Mysql 1.镜像仓库地址 https://hub.docker.com 2.复制命令 docker pull mysql:8.0…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

【kafka】Golang实现分布式Masscan任务调度系统

要求&#xff1a; 输出两个程序&#xff0c;一个命令行程序&#xff08;命令行参数用flag&#xff09;和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽&#xff0c;然后将消息推送到kafka里面。 服务端程序&#xff1a; 从kafka消费者接收…...

家政维修平台实战20:权限设计

目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系&#xff0c;主要是分成几个表&#xff0c;用户表我们是记录用户的基础信息&#xff0c;包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题&#xff0c;不同的角色&#xf…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...