Python shutil库提供了对文件和目录复制、移动、删除、压缩、解压等操作。
示例:
import os
import shutil
dirpath = os.path.dirname(os.path.realpath(__file__))
sourcedir = os.path.join(dirpath, "shutil_a")
sourcefile = os.path.join(dirpath, "shutil_a", "test.txt")
destdir = os.path.join(dirpath, "shutil_b")
destfile = os.path.join(dirpath, "shutil_b", "test2.txt")
# 复制文件或目录
shutil.copy(sourcefile, destdir)
# 复制文件
shutil.copyfile(sourcefile, destfile)
# 复制目录
shutil.copytree(sourcedir, destfile, dirs_exist_ok=True)
语法:shutil.move(src, dst)
示例:
import os
import shutil
dirpath = os.path.dirname(os.path.realpath(__file__))
sourcedir = os.path.join(dirpath, "shutil_a")
sourcefile = os.path.join(dirpath, "shutil_a", "test.txt")
destdir = os.path.join(dirpath, "shutil_b")
shutil.move(sourcefile, destdir)
shutil.move(destdir, sourcedir)
删除某个文件使用 os 模块提供的remove和unlink方法:
删除目录使用 shutil.rmtree 方法:
import os
import shutil
dirpath = os.path.dirname(os.path.realpath(__file__))
destdir = os.path.join(dirpath, "shutil_b")
shutil.rmtree(destdir)
shutil库也支持文件压缩、解压操作,这个功能在Python 3.2版本引入。
语法格式:
shutil.make_archive(base_name, format[, root_dir[, base_dir[, verbose[, dry_run[, owner[, group[, logger]]]]]]])
示例:
import os
import shutil
#Python小白学习交流群:725638078
dirpath = os.path.dirname(os.path.realpath(__file__))
archive_name = os.path.join(dirpath, "shutil_a")
root_dir = archive_name
shutil.make_archive(archive_name, 'zip', root_dir)
语法格式:
shutil.unpack_archive(filename[, extract_dir[, format]])
示例:
import os
import shutil
dirpath = os.path.dirname(os.path.realpath(__file__))
archive_name = os.path.join(dirpath, "shutil_a.zip")
extract_dir = os.path.join(dirpath, "shutil_a")
shutil.unpack_archive(archive_name, extract_dir, 'zip')
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。