news 2026/5/8 18:54:42

python 学习笔记(文件和目录操作)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python 学习笔记(文件和目录操作)
  • 创建目录

    os.makedirs可以递归的创建目录结构。

    importos os.makedirs('tmp/python/test',exist_ok=True)#exit_ok = True指定了,如果某个要创建的目录已经存在,也不报错
  • 删除文件或目录

    os.remove可以删除一个文件

    os.remove('test.py')

    **shutil.rmtree()**可以递归的删除某个目录和该目录里面所有的子目录和子文件。

    importshutil shutil.rmtree('tmp',ignore_errors=True)#注意:参数ignore_errors值设置为True,表示忽略删除过程中的错误(比如要删除的目录不存在),不会抛出异常。
  • 拷贝文件

    shutil 模块里面有很多 目录文件操作的函数。

    拷贝文件,可以使用shuitl模块的copyfile函数。

    fromshutilimportcopyfile# 拷贝 d:/tools/first.py 到 e:/first.pycopyfile('d:/tools/first.py','e:/first.py')

    **注意:**如果拷贝前,e:/first.py已经存在,则会被拷贝覆盖,所以使用该函数一定要小心。

  • 拷贝目录

    如果我们要拷贝一个目录里面所有的内容(包括子目录和文件,子目录里面的子目录和文件,等等)到另外一个目录中,可以使用shutil的copytree函数。

    fromshutilimportcopytree copytree('D:/aaaa','e:/new/bbb')

    注意拷贝前,目标目录必须不存在,否则会报错。

  • 修改文件名,目录名

    要修改文件名,目录名,可以使用os模块的rname函数

    importos os.rename('d:/tools/aaa','d:/tools/bbb')

    **注意:**Linux系统上,如果重命名之前d:/tools/aaa已经存在,则会被覆盖,所以使用该函数一定要小心。

  • 判断文件,目录是否存在

    如果我们需要判断一个指定路径的文件或者目录是否存在,可以使用下面的方法。

    importos os.path.exists('d:/systems')

    exists方法返回值为True表示存在,否则表示不存在。

    如果要判断指定路径是否是文件,可以这样

    importos os.path.isfile('d:/systems')

    如果要判断指定路径是否是目录,可以这样

    importos os.path.isdir('d:/systems')
  • 当前工作目录

    我们的程序运行时,是有当前工作目录的。

    程序代码中所有的对文件的访问,如果使用相对路径,都是基于这个当前工作目录。

    需要得到程序的当前工作目录的路径,可以使用

    cwd=os.getcwd()

    需要改变当前工作目录到另外的路径,可以使用

    os.chdir(path)

    参数就是新的当前工作目录,路径地址。

  • 得到目录中指定扩展名的文件和子目录

    k可以使用glob库

    importglob exes=glob.glob(r'd:\tmp\*.txt')print(exes)

    后续待发,期待期待期待~

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 13:48:39

从底层逻辑到工程实践,深入理解C语言在计算机世界中的核心地位与持久价值

在计算机语言百花齐放的今天,C语言依然占据着一个极其特殊且稳固的位置。它不像某些新兴语言那样语法华丽、生态庞大,也不以“快速开发”“低门槛”为主要卖点,但它却深深嵌入了现代计算机体系的骨骼之中。从操作系统、嵌入式设备到高性能计算…

作者头像 李华
网站建设 2026/4/30 3:21:10

【JavaSE】多线程之安全使用容器

不出意外这是多线程的最后一篇文章,主要介绍的是面试中比较常考的一个点——多线程下使用容器,我们开始吧~我们知道,在单线程环境下ArrayList、HashMap等容器使用起来非常方便,但在多线程环境中,如果多个线程同时对容器…

作者头像 李华
网站建设 2026/5/3 17:53:52

小米集团2025千万技术大奖正式颁发,自研芯片玄戒O1斩获最高奖项

1月7日,2025小米“千万技术大奖”颁奖典礼在北京小米科技园举办。经过三个月的激烈竞争与严苛评选,小米自研芯片“玄戒O1”凭借创新性、领先性和影响力等多个维度的卓越表现,荣获千万技术大奖最高奖项,小米集团创始人、董事长兼 C…

作者头像 李华