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. libmysqlclient.so.18 not found 的解决方法

    现象:在银河麒麟下,安装了mysql,并且mysql服务正常运行,但是Qt访问mysql还是报Driver not loaded,ldd Qt自己的mysql驱动报错如标题所示.路径: 解释:很明显就 ...

  2. [LeetCode] 139. Word Break 单词拆分

    Given a non-empty string s and a dictionary wordDict containing a list of non-empty words, determine ...

  3. E: Unable to correct problems, you have held broken packages-之apt-get 下载报依赖问题

    今天在新来了一台ubutnu 18.04 在安装zabbix客户端是报依赖问题 root@VM_0_10:~# apt-get install zabbix-agent Reading package ...

  4. OpenJudge 2755:神奇的口袋

    总时间限制: 10000ms 内存限制: 65536kB 描述 有一个神奇的口袋,总的容积是40,用这个口袋可以变出一些物品,这些物品的总体积必须是40.John现在有n个想要得到的物品,每个物品的体 ...

  5. 第2/7Beta冲刺

    1.团队成员 成员姓名 成员学号 秦裕航 201731062432(组长) 刘东 201731062227 张旭 201731062129 王伟 201731062214 2.SCRU部分 2.1各成 ...

  6. CF1260D A Game with Traps

    http://codeforces.com/problemset/problem/1260/D 首先很明显可以想到二分答案,把能力值数组排个序就好. 考虑怎么check. 设当前二分值为w,即不能直接 ...

  7. hashMap的源码实现

    1.初步认识hashMap public static void main(String[] args) { HashMap<String, Integer> map = new Hash ...

  8. Mac打开原生NTFS功能

    一.在 terminal 里输入 diskutil list 查看 U 盘的 NAME diskutil list 二.执行以下命令,输入密码 sudo nano /etc/fstab 三.把U盘信息 ...

  9. 分布式全文搜索引擎(ElasticSearch)

    1. ElasticSearch介绍(简称ES) ES即为了解决原生Lucene使用的不足,优化Lucene的调用方式,并实现了高可用的分布式集群的搜索方案. 首先,ES的索引库管理支持依然是基于Ap ...

  10. CCS中的linked resource

    一.关于CCS中的linked resource linkded resources 是eclipse中的一个功能,可以将存放在项目所在位置以外某个路径的文件或者文件夹链接至工程项目中.这个功能最大的 ...