• 文件管理模块总结


    总结

    1. os库

    对于os模块来说,这是大家最熟悉的一个库,功能相对很齐全,主要像以下这些功能:

    • os.getcwd():获取当前的工作路径;
    • os.chdir() :改变当前工作目录到指定的路径;
    • os.listdir(path):传入任意一个path路径,返回的是该路径下所有文件和目录组成的列表;
    • os.mkdir():创建文件夹;

    2. shutil库

    shutil库,最主要的功能就是提供了对文件/文件夹的复制、移动和删除功能,主要如下:

    • shutil.copy(src,dst):复制文件,src表示源文件,dst表示目标文件夹;
    • shutil.copytree(src,dst):复制文件夹,src表示源文件夹,dst表示目标文件夹;
    • shutil.move(src,dst):移动文件/文件夹,src表示源文件/文件夹,dst表示目标文件夹;
    • shutil.rmtree(src):删除文件夹,src表示源文件夹。区别这里和os模块中remove() 、rmdir()的用法、remove()方法只能删除某个文件,mdir()只能删除某个空文件夹。但是shutil模块中的rmtree()可以递归彻底删除非空文件夹;

    3. glob库

    glob库,提供了更加便捷的用来查找符合特定规则的目录和文件的方法,主要它支持*、**、? 、[ ]这四个通配符。

    • *:匹配0个或多个字符;
    • **:匹配所有文件、目录、子目录和子目录里的文件(3.5版本新增);
    • ?:匹配一个字符;
    • []:匹配指定范围内的字符,如[0-9]匹配数字,[a-z]匹配小写字母;

    4. pathlib库

    pathlib库中有一些功能超级棒,其中我最喜欢下面这个功能:

    • p.name:获取文件名;
    • p.suffix:获取文件后缀;

    详解

     glob库中主要的3个函数

    其实glob库很简单,只有3个主要函数供我们使用,它们分别是glob()iglob()escape()函数,因此学习起来特别容易。

    • glob.glob():返回符合匹配条件的所有文件的路径;
    • glob.iglob():返回一个迭代器对象,需要循环遍历获取每个元素,得到的也是符合匹配条件的所有文件的路径;
    • glob.escape():escape可以忽略所有的特殊字符,就是星号、问号、中括号,用处不大;
    • recursive=False:代表递归调用,与特殊通配符“**”一同使用,默认为False,False表示不递归调用,True表示递归调用;
    1. import glob
    2. #获取指定目录下的所有图片
    3. print glob.glob(r"E:\Picture\*\*.jpg")
    4. #获取上级目录的所有.py文件
    5. print glob.glob(r'../*.py') #相对路径

  • 相关阅读:
    Android笔记(一): Android活动组件的创建和配置
    取得成功的产品设计需要达到哪些标准?
    Linux------一篇博客了解Linux最常用的指令
    ssm+共享图书管理系统 毕业设计-附源码151121
    《爱的艺术》读书笔记
    北大肖臻老师《区块链技术与应用》系列课程学习笔记[29]总结
    MybatisPlus【SpringBoot】 3 基本CRUD
    霍夫曼(Huffman)编码算法详解之C语言版
    Curator实现Zookeeper分布式锁
    proteus仿真-51单片机定时器程序
  • 原文地址:https://blog.csdn.net/zhangt766/article/details/127360310