1. 判断目录是否存在 'isdir',删除目录时只有该目录为空才可以 'rmdir'

import os
if(os.path.isdir('D:/Python_workspace/spyder_space/test_各种功能/哈哈哈哈')): #判断目录是否存在
print('yes')
os.rmdir('D:/Python_workspace/spyder_space/test_各种功能/哈哈哈哈') #删除目录,只有该目录为空才可以
else:
print('no')

2. 列出目录下的文件/目录名:'listdir'

#列出目录下的文件名,包括目录名
file_list=os.listdir('D:/Python_workspace/spyder_space/test_各种功能')
print(file_list)

3. 新建目录:'mkdir'

# 新建目录
os.mkdir('D:/Python_workspace/spyder_space/test_各种功能/哈哈哈哈')

4. 判断目录或文件是否存在:Path包

from pathlib import Path
file_path = Path(r'D:/Python_workspace/spyder_space/test_各种功能/test_目录.py')
# file_path = Path(r'D:/Python_workspace/spyder_space/test_各种功能/哈哈哈哈.py')
if file_path.exists(): #判断文件或目录是否存在
print('yes')
else:
print('no') # 仅仅判断文件
from pathlib import Path
file_path = Path(r'D:/Python_workspace/spyder_space/test_各种功能/test_目录.py')
# file_path = Path(r'D:/Python_workspace/spyder_space/test_各种功能/哈哈哈哈.py')
if file_path.is_file(): #判断文件或目录是否存在
print('yes')
else:
print('no') # 仅仅判断目录
from pathlib import Path
file_path = Path(r'D:/Python_workspace/spyder_space/test_各种功能/test_目录.py')
# file_path = Path(r'D:/Python_workspace/spyder_space/test_各种功能/哈哈哈哈.py')
if file_path.is_dir(): #判断文件或目录是否存在
print('yes')
else:
print('no')

5. 直接删除该文件夹(不管是否有子文件,可以本身不为空)—— shutil 包

import shutil
if(os.path.isdir('D:/Python_workspace/spyder_space/test_各种功能/哈哈哈哈')):
shutil.rmtree(r"D:\Python_workspace\spyder_space\test_各种功能\哈哈哈哈")

6. 依次删除文件夹的子文件和子目录,但是保留该文件夹(也就是执行之后,该文件夹为空)—— os.walk

# 遍历一个文件夹并删除它的所有子文件夹以及文件
import os
for root, dirs, files in os.walk(r"D:\Python_workspace\spyder_space\test_各种功能\哈哈哈哈", topdown=False):
for file in files:
os.remove(os.path.join(root, file)) #删文件
for dir_ in dirs:
os.rmdir(os.path.join(root, dir_)) # 删目录 # root 是当前正在遍历的这个文件夹地址
# dirs 该文件夹中所有的目录的名字(不包括子目录)
# files 该文件夹中所有的文件(不包括子目录)
# topdown --可选,为 True,则优先遍历 top 目录,否则优先遍历 top 的子目录(默认为开启)。如果 topdown 参数为 True,walk 会遍历top文件夹,与top 文件夹中每一个子目录。

参考:

https://blog.csdn.net/u011961856/article/details/77840374

https://www.runoob.com/w3cnote/python-check-whether-a-file-exists.html

https://www.runoob.com/python/os-walk.html

https://blog.csdn.net/kaida1234/article/details/89553115

python判断目录或者文件的更多相关文章

  1. Python 读取目录、文件

    在读文件的时候往往需要遍历文件夹,python的os.path包含了很多文件.文件夹操作的方法.下面列出: os.path.abspath(path) #返回绝对路径 os.path.basename ...

  2. Python获取目录、文件的注意事项

    Python获取指定路径下的子目录和文件有两种方法: os.listdir(dir)和os.walk(dir),前者列出dir目录下的所有直接子目录和文件的名称(均不包含完整路径),如 >> ...

  3. python 跨目录访问文件

    1.同级.同目录的文件之间的访问 有这样一个目录结构 假如,in_A.py 这个文件想调用 hello_world.py 中的函数怎么办呢? --->>>  import 只需在 i ...

  4. Python判断上传文件类型

    在开发上传服务时,经常需要对上传的文件进行过滤. 本文为大家提供了python通过文件头判断文件类型的方法,非常实用. 代码如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

  5. python判断两个文件是否相同

    此方法相当于 Linux 系统下的diff,或者是 git 下的 checkout 官方解释请看: https://docs.python.org/2/library/difflib.html #!/ ...

  6. Python监控目录和文件变化

    一.os.listdir import os, time path_to_watch = "." before = dict ([(f, None) for f in os.lis ...

  7. python获取目录下文件夹名称

    path = '/opt' dirs = os.listdir(path) for dir in dirs: print dir

  8. Python --判断路径是否为目录或文件

    os.path.isdir( ), os.path.isfile(),os.listdir( ), os.walk( ) 参考网址:https://blog.csdn.net/xxn_723911/a ...

  9. python判断文件和目录是否存在

    #Python的os.path模块提供了 isdir() 和 isfile()函数,请导入该模块,并调用函数判断指定的目录和文件是否存在. import os print os.path.isdir( ...

随机推荐

  1. Ehcache API的使用和注意点

    目录 创建CacheManager CacheManager常用的API 创建Cache Cache常用的API 创建Element Element常用的API 配置文件 配置文件名为ehcache. ...

  2. [python语法]python中如何判断一个集合是另一个集合的子集?

    问:python中如何判断一个集合是另一个集合的子集? 答:用issubset()方法 语法: A.issubset(B) 返回: True 如果A是B的子集. False 如果A不是B的子集. 样例 ...

  3. centos 安装 swoole_framework 框架

    composer require "matyhtf/swoole_framework" 运行以上命令 Using version ^1.20 for matyhtf/swoole_ ...

  4. ObjectARX创建带文字的线型实例代码

    AcDbLinetypeTable* pLinetypeTable=NULL; Acad::ErrorStatus es = acdbHostApplicationServices()->wor ...

  5. 从Asp .net到Asp core (第一篇)《回顾Asp .net生命周期与管道机制》

    从2016年微软收购了Xamarin整合到Visual Studio里并将其开源到现在已有三年多时间,从.net core 1.0 到现在的2.2,以及即将问世的3.0,我们看到微软正在跨平台之路越走 ...

  6. centos6.5上安装5.7版本的mysql

    centos6.5上安装5.7版本的mysql https://www.cnblogs.com/lzj0218/p/5724446.html 设置root可以在本机以外的机器访问 mysql -uro ...

  7. day29——socket套接字(少量不全)

    day29 socket套接字 socket是处于应用层与传输层之间的抽象层,他是一组操作起来非常简单的接口(接受数据)此接口接受数据之后,交由操作系统. 为什么存在socket抽象层? 如果直接与操 ...

  8. Python知识点图片

  9. PMM--简介与部署

    一.PMM架构 Percona Monitoring and Management是percona一款开源的用于管理和监控MySQL 和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数 ...

  10. 为什么重写equals一定要重写hashCode方法?

    大家都知道,equals和hashcode是java.lang.Object类的两个重要的方法,在实际应用中常常需要重写这两个方法,但至于为什么重写这两个方法很多人都搞不明白. 下面我们看下Objec ...