关注B站可以观看更多实战教学视频:肆十二-的个人空间-肆十二-个人主页-哔哩哔哩视频 (bilibili.com)
今天我们来介绍一下python中的shutil库,通过shutil库可以很方便的操作文件和文件夹。
shutil
是Python标准库中的一个模块,提供了许多用于文件和文件夹操作的高级接口。以下是shutil
模块中一些常用的方法以及对应的代码示例:
1. 复制文件和文件夹
shutil.copy(src, dst, *, follow_symlinks=True)
用于复制文件。
import shutil
# 复制文件
shutil.copy('source.txt', 'destination.txt')
shutil.copy2(src, dst, *, follow_symlinks=True)
类似于copy()
,但还会尝试复制文件的元数据。
import shutil
# 复制文件及其元数据
shutil.copy2('source.txt', 'destination.txt')
shutil.copytree(src, dst, dirs_exist_ok=False)
递归地复制整个文件夹及其内容。
import shutil
# 复制整个文件夹
shutil.copytree('source_directory', 'destination_directory')
2. 移动文件和文件夹
shutil.move(src, dst, copy_function=copy2)
递归地移动文件或文件夹。
import shutil
# 移动文件
shutil.move('source.txt', 'destination_folder/source.txt')
# 移动文件夹
shutil.move('source_directory', 'destination_folder/source_directory')
3. 删除文件和文件夹
shutil.rmtree(path, ignore_errors=False, onerror=None)
递归地删除文件夹及其内容。
import shutil
# 删除文件夹及其内容
shutil.rmtree('directory_to_remove')
4. 更改文件和文件夹的权限
注意:更改文件权限通常使用os.chmod
,但shutil
模块本身没有直接提供更改权限的函数。
5. 归档和解归档
shutil.make_archive(base_name, format, root_dir, base_dir=None, verbose=0, dry_run=0, owner=None, group=None, logger=None)
创建归档文件(如zip或tar文件)。
import shutil
# 创建一个zip归档文件
shutil.make_archive('archive_name', 'zip', 'directory_to_archive')
这将会在当前目录下生成一个名为archive_name.zip
的归档文件,其中包含了directory_to_archive
文件夹的内容。
shutil.unpack_archive(filename, extract_dir=None, format=None)
解归档文件。
import shutil
# 解归档一个zip文件
shutil.unpack_archive('archive_name.zip', 'extraction_directory')
这将会把archive_name.zip
文件中的内容解压到extraction_directory
文件夹中。
这些是shutil
模块中一些最常用的方法和功能。在实际应用中,你可以根据需要选择适当的方法来执行文件和文件夹的操作。