Python基础入门 Day68 文件与目录的高级操作

108次阅读
没有评论

共计 977 个字符,预计需要花费 3 分钟才能阅读完成。

在上一节中,我们学习了如何通过 os 模块进行文件路径的处理与判断。但在实际开发中,我们往往需要更高级的文件和目录操作,比如复制、移动、压缩文件等。这些功能可以通过 Python 的 shutil 模块来实现。

shutil 模块是 Python 提供的一个高级文件操作库,常见功能包括文件复制、文件移动、目录删除和压缩解压等。

常用方法如下:

  1. 复制文件
import shutil

# 复制文件
shutil.copy("data.txt", "backup_data.txt")
print(" 文件已复制 ")

shutil.copy(src, dst) 会将文件内容和权限信息复制到新的路径。

  1. 复制目录
shutil.copytree("my_folder", "backup_folder")
print(" 目录已复制 ")

shutil.copytree(src, dst) 会递归复制整个目录,包括其中的所有文件和子目录。

  1. 移动文件或目录
shutil.move("backup_data.txt", "archive/backup_data.txt")
print(" 文件已移动 ")

shutil.move(src, dst) 可以移动文件,也可以移动目录。

  1. 删除目录
shutil.rmtree("backup_folder")
print(" 目录已删除 ")

shutil.rmtree(path) 会递归删除整个目录及其内容。需要谨慎使用。

  1. 压缩与解压缩
# 创建压缩包
shutil.make_archive("project_backup", "zip", "my_folder")

# 解压缩
shutil.unpack_archive("project_backup.zip", "restored_folder")

shutil.make_archive(base_name, format, root_dir) 可以将目录打包成 zip、tar 等格式;shutil.unpack_archive(filename, extract_dir) 可以解压缩文件。

这些操作在自动化运维、数据备份、项目打包中都非常有用。

练习与思考:

  1. 编写一个程序,将当前目录下的所有 .txt 文件复制到一个名为 backup 的目录中。
  2. 尝试将某个项目文件夹打包成 zip 压缩包,并解压到新的目录。
  3. 写一个脚本,先判断文件是否存在,如果存在则备份到指定文件夹中,否则提示文件未找到。
正文完
 0
评论(没有评论)