Python标准库 – import shutil

在Python开发中,我们经常需要对文件和目录进行操作。Python标准库中提供了很多处理文件和目录的模块,其中import shutil是其中的一个常用模块。

一、复制文件和目录

import shutil

# 复制文件
shutil.copy("source_file_path", "target_file_path")

# 复制目录
shutil.copytree("source_dir_path", "target_dir_path")

使用shutil.copy()方法,可以将一个文件从源路径复制到目标路径。使用shutil.copytree()方法,可以复制整个目录(包括目录内的所有文件和子目录)。如果目标路径已存在,会抛出异常。

复制文件和目录实例:

import shutil

# 复制文件
shutil.copy("test.txt", "test_copy.txt")

# 复制目录
shutil.copytree("test_dir", "test_dir_copy")

二、移动文件和目录

import shutil

# 移动文件
shutil.move("source_file_path", "target_file_path")

# 移动目录
shutil.move("source_dir_path", "target_dir_path")

使用shutil.move()方法,可以将一个文件或目录从源路径移动到目标路径。

移动文件和目录实例:

import shutil

# 移动文件
shutil.move("test.txt", "test_dir/test.txt")

# 移动目录
shutil.move("test_dir", "test_move_dir")

三、删除文件和目录

import os
import shutil

# 删除文件
os.remove("file_path")

# 删除空目录
os.rmdir("dir_path")

# 删除目录(包括目录内的所有文件和子目录)
shutil.rmtree("dir_path")

使用os.remove()方法,可以删除一个文件。使用os.rmdir()方法,可以删除一个空目录。使用shutil.rmtree()方法,可以删除整个目录(包括目录内的所有文件和子目录)。

删除文件和目录实例:

import os
import shutil

# 删除文件
os.remove("test_copy.txt")

# 删除空目录
os.rmdir("test_dir_copy")

# 删除目录(包括目录内的所有文件和子目录)
shutil.rmtree("test_move_dir")

四、其他常用方法

在使用import shutil模块时,还可以使用一些其他的常用方法。

1. 压缩文件和目录

import shutil

# 压缩文件
shutil.make_archive("archive_name", "format", "root_dir")

# 压缩目录
shutil.make_archive("archive_name", "format", "root_dir")

# format可选参数:zip, tar, gztar, bztar, xztar

使用shutil.make_archive()方法,可以将指定的文件或目录压缩到指定的压缩文件中。

文件和目录压缩实例:

import shutil

# 压缩文件
shutil.make_archive("test_archive", "zip", ".", "test.txt")

# 压缩目录
shutil.make_archive("test_dir_archive", "zip", ".", "test_dir")

2. 解压缩文件和目录

import shutil

# 解压缩
shutil.unpack_archive("archive_name", "extract_dir", "format")

# format可选参数:zip, tar, gztar, bztar, xztar

使用shutil.unpack_archive()方法,可以将指定的压缩文件解压缩到指定的解压缩目录中。

文件和目录解压实例:

import shutil

# 解压缩文件
shutil.unpack_archive("test_archive.zip", ".", "zip")

# 解压缩目录
shutil.unpack_archive("test_dir_archive.zip", ".", "zip")

3. 修改文件和目录的权限

import os
import stat

# 修改文件权限
os.chmod("file_path", stat.S_IRWXU)

# 修改目录权限
os.chmod("dir_path", stat.S_IRWXU)

使用os.chmod()方法,可以修改指定的文件或目录的权限。

修改文件和目录权限实例:

import os
import stat

# 修改文件权限
os.chmod("test.txt", stat.S_IRWXU)

# 修改目录权限
os.chmod("test_dir", stat.S_IRWXU)

4. 获取文件和目录的元信息

import os
import shutil

# 获取文件元信息
print(os.stat("file_path"))

# 获取目录元信息
print(shutil.disk_usage("dir_path"))

使用os.stat()方法,可以获取指定文件的元信息。使用shutil.disk_usage()方法,可以获取指定目录的元信息(包括总空间、已用空间、可用空间)。

获取文件和目录元信息实例:

import os
import shutil

# 获取文件元信息
print(os.stat("test.txt"))

# 获取目录元信息
print(shutil.disk_usage("."))

总结

通过以上详细的介绍,相信大家对import shutil模块在文件和目录操作方面的处理方式有了更深入和全面的了解。在实际开发过程中,可以通过适当运用该模块中的方法,提高文件和目录操作的效率和质量。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/180412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-22 05:13
下一篇 2024-11-22 05:13

相关推荐

  • Python计算阳历日期对应周几

    本文介绍如何通过Python计算任意阳历日期对应周几。 一、获取日期 获取日期可以通过Python内置的模块datetime实现,示例代码如下: from datetime imp…

    编程 2025-04-29
  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • Python列表中负数的个数

    Python列表是一个有序的集合,可以存储多个不同类型的元素。而负数是指小于0的整数。在Python列表中,我们想要找到负数的个数,可以通过以下几个方面进行实现。 一、使用循环遍历…

    编程 2025-04-29
  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • Python周杰伦代码用法介绍

    本文将从多个方面对Python周杰伦代码进行详细的阐述。 一、代码介绍 from urllib.request import urlopen from bs4 import Bea…

    编程 2025-04-29
  • python强行终止程序快捷键

    本文将从多个方面对python强行终止程序快捷键进行详细阐述,并提供相应代码示例。 一、Ctrl+C快捷键 Ctrl+C快捷键是在终端中经常用来强行终止运行的程序。当你在终端中运行…

    编程 2025-04-29
  • Python字典去重复工具

    使用Python语言编写字典去重复工具,可帮助用户快速去重复。 一、字典去重复工具的需求 在使用Python编写程序时,我们经常需要处理数据文件,其中包含了大量的重复数据。为了方便…

    编程 2025-04-29
  • Python程序需要编译才能执行

    Python 被广泛应用于数据分析、人工智能、科学计算等领域,它的灵活性和简单易学的性质使得越来越多的人喜欢使用 Python 进行编程。然而,在 Python 中程序执行的方式不…

    编程 2025-04-29
  • Python清华镜像下载

    Python清华镜像是一个高质量的Python开发资源镜像站,提供了Python及其相关的开发工具、框架和文档的下载服务。本文将从以下几个方面对Python清华镜像下载进行详细的阐…

    编程 2025-04-29
  • 蝴蝶优化算法Python版

    蝴蝶优化算法是一种基于仿生学的优化算法,模仿自然界中的蝴蝶进行搜索。它可以应用于多个领域的优化问题,包括数学优化、工程问题、机器学习等。本文将从多个方面对蝴蝶优化算法Python版…

    编程 2025-04-29

发表回复

登录后才能评论