删除目录

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

删除目录可以通过使用os模块提供的rmdir()函数实现。通过rmdir()函数删除目录时,只有当要删除的目录为空时才起作用。rmdir()函数的基本语法格式如下:

os.rmdir(path)

其中,path为要删除的目录,可以使用相对路径,也可以使用绝对路径。

例如,要删除刚刚创建的“C:\demo\test\dir\mr”目录,可以使用下面的代码:

import os

os.rmdir("C:\\demo\\test\\dir\\mr")      # 删除C:\demo\test\dir\mr目录

执行上面的代码后,将删除“C:\demo\test\dir”目录下的mr目录。

注意:如果要删除的目录不存在,那么将抛出“FileNotFoundError: [WinError 2] 系统找不到指定的文件”异常。因此,在执行os.rmdir()函数前,建议先判断该路径是否存在,可以使用os.path.exists()函数判断。具体代码如下:

import os

path = "C:\\demo\\test\\dir\\mr"               # 指定要创建的目录

if os.path.exists(path):                      # 判断目录是否存在

    os.rmdir("C:\\demo\\test\\dir\\mr")       # 删除目录

    print("目录删除成功!")

else:

print("该目录不存在!")

多学两招:使用rmdir()函数只能删除空的目录,如果想要删除非空目录,则需要使用Python内置的标准模块shutil的rmtree()函数实现。例如,要删除不为空的“C:\\demo\\test”目录,可以使用下面的代码:

import shutil

shutil.rmtree("C:\\demo\\test")           # 删除C:\demo目录下的test子目录及其内容

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

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

相关文章

Flutter核心原理

Flutter UI框架 UI 框架解决的主要问题就是:如何基于基础的图形API(Canvas)来封装一套可以高效创建UI的框架。Flutter提供了一套Dart API,然后在底层通过OpenGL这种跨平台的绘制库(内部会调用操作系统API)…

牛客java基础(一)

A 解析 : java源程序只允许一个public类存在 ,且与文件名同名 ; D hashCode方法本质就是一个哈希函数,这是Object类的作者说明的。Object类的作者在注释的最后一段的括号中写道:将对象的地址值映射为integer类型的哈希值。但hashCode()并不…

聚类层次【python,机器学习,算法】

层次聚类算法(Hierarchical Clustering Algorithm)是一种常用的无监督学习算法,用于将数据集划分成多个不同层次的簇。与K均值聚类不同,层次聚类不需要预先指定聚类数量,而是通过计算样本之间的相似度或距离来构建一个…

Linux性能优化实战

Linux性能优化实战 33 | 关于 Linux 网络,你必须知道这些(上)如何提高系统并发?(8条)如何理解分布式?如何理解云计算?如何理解微服务?TCP/IP 网络栈如何分层?…

前端 JS 经典:打印对象的 bug

1. 问题 相信这个 console 打印语句的 bug,其实小伙伴们是遇到过的,就是你有一个对象,通过 console,打印一次,然后经过一些处理,再通过 console 打印,发现两次打印的结果是一样的,第…

SSM整合总结

一.核心问题 (一)两个容器 web容器 web相关组件(controller,springmvc核心组件) root容器 业务和持久层相关组件(service,aop,tx,dataSource,mybatis,mapper等) 父容器:root容器,盛放service、mapper、…

Oracle EBS AP发票验证-计税期间出现意外错误解决方法

系统版本 RDBMS : 12.1.0.2.0 Oracle Applications : 12.2.6 问题症状: **打开发票题头或发票行“税详细信息”**错误提示如下: 由于以下原因而无法针对"税"窗口中所做的修改更新 Oraclee Payables信息: 尚未为税率或帐户来源税率设置可退回税/应纳税额帐户。请…

Java和Web前端哪个有发展前景?

Java和Web前端都是当今技术行业里的热门岗位,岗位招聘需求量大,人才竞争度高,同学们掌握这两个岗位里其中任何一个的相关主流技术,都可以找到一份不错的职位。下面请允许笔者做一个简要的分析阐述: 一、Web前端 Web前…

C语言过度C++语法补充(面向对象之前语法)

目录 1. C相较于C语言新增的语法 0. C 中的输入输出 1. 命名空间 1. 我们如何定义一个命名空间? 2. 如何使用一个命名空间 3. 命名空间中可以定义什么? 4. 在 相同或者不同 的文件中如果出现 同名的命名空间 会如何? 5. 总结~~撒花~~…

网络空间安全数学基础·多项式环与有限域

5.1 多项式环(掌握) 5.2 多项式剩余类环(理解) 5.3 有限域(熟练) 5.1 多项式环 定义:设F是一个域,称是F上的一元多项式. 首项:如果an≠0,则称 a…

最全的NVM、Node.js、NPM、NRM安装教程

介绍 本文将会全面的介绍Node.js全家桶的安装,内容包括:NVM安装,Node.js安装,NPM安装,NRM安装。 下面简单介绍下我们准备安装的都是什么东东: 一、Node.js: Node.js 是运行在服务端的 JavaScript,是一个基于Chrome JavaScript 运行时建立的一个平台。简单说,Node.js是J…

BGP有条件打破IBGP水平分割1

接BGP汇总认证 1、BGP聚合 不是BGP自带的聚合配置,而是使用BGP的人,利用了BGP的配置原理设计一套配置极简的汇总命令; BGP的宣告特点: 本地路由表中任何来源产生的路由均可宣告到BGP协议 2、bgp自带的汇总配置 先逐条宣告明细,最后…

CAD二次开发(8)-探索实现不重启CAD进行热部署代码

最近在研究CAD二次开发过程中,调试代码的过程中,需要频繁地重启CAD,非常浪费我们的开发时间,所以我就一直在想,怎么可以实现在不每次重启代码和CAD的情况下,实现代码的热部署效果。 我找到的方式&#xff…

HDFS的块汇报和块放置策略--从一次HDFS写文件故障开始(WIP)

文章目录 前言事故分析:代码解析BlockReport的调度和时机哪些Block会进行FBR或者IBRIBR所选定的BlockFBR所选定的Block 块放置策略详解之在上层寻找机器为文件添加块的基本流程块放置策略:选择机器为每个副本逐个寻找机器在指定范围内随机寻找简单看一下…

本地运行ChatTTS

TTS 是将文字转为语音的模型,最近很火的开源 TTS 项目,本地可以运行,运行环境 M2 Max,差不多每秒钟 4~~5 个字。本文将介绍如何在本地运行 ChatTTS。 下载源码 首先下载源代码 git clone https://github…

一句话说清HDMI ARC eARC功能和区别

HDMI: 高清多媒体接口,主要用于传输高清音视频信号,High Definition Multimedia Interface。 ARC: 音频回传通道,Audio Return Channel eARC: 增强型音频回传通道,第一个E是增强的意思,Enhanced Audio…

【硬件工程师面试宝典】常见面试题其一

1. 什么是 Setup 和 Hold 时间? Setup 时间是指在时钟沿到达之前,数据需要保持稳定的最小时间。这意味着在时钟沿到达之前,数据线上的信号必须已经稳定下来。 Hold 时间是指在时钟沿到达之后,数据需要继续保持稳定的最小时间。这…

给孩子的端午节礼物:最新初中数学思维导图大合集+衡水高考学霸笔记,可下载打印!

大家好哇!端午节到了,阿星给家里有孩子的伙伴们一份礼物哦!今天给大家带来一个超级实用的学习神器——思维导图法,最新版的初中数学思维导图大合集! 这可不是我吹哦,连哈佛、剑桥大学都在用的高级学习方法…

3D打印随形水路:模具水路的革命性技术

在快速发展的模具制造行业中,3D打印技术以其独特的优势正在引领一场技术革命。其中,3D打印随形水路技术,凭借其灵活性和定制化设计的能力,为模具带来了前所未有的变革。 模具3D打印随形水路技术,是一种利用3D打印技术制…

alembic 维护的postgresql的数据库表结构,models做了删除表的列和增加表的列,应该怎么做更新操作

使用 Alembic 进行数据库迁移时,如果你的数据模型(通常是 SQLAlchemy 的 ORM 模型)有变动,如添加或删除列,你需要创建一个迁移脚本来更新数据库结构。这里是一个基本的步骤说明,如何使用 Alembic 来处理你的…