python学习--shutil模块

本文详细介绍了Python的shutil模块,包括copy复制功能,如copyfileobj、copyfile、copymode、copystat、copy和copy2的用法,以及rm删除操作的rmtree函数和move移动文件或目录的实现。提供了这些函数的基本概念和源码解析,帮助理解其工作原理。
摘要由CSDN通过智能技术生成

shutil模块


copy复制

copyfileobj(fsrc, fdst[, length])

  • 文件对象的复制, fsrc和fdst是open打开的文件对象, 复制内容, fdst要求可写
  • length 指定了buffer的大小

源码如下:

def copyfileobj(fsrc, fdst, length=16*1024):
    while 1:
        buf = fsrc.read(length) # 从fsrc读取文件
        if not buf: # 如果为空, 就break
            break
        fdst.write(buf) # 读取的文件写入fdst

copyfile(src, dst, *, follow_symlinks=True)

  • 复制文件内容,不含元数据。src、dst为文件的路径字符串
  • 本质上调用的就是copyfileobj,所以不带元数据二进制内容复制。

源码如下:

def copyfile(src, dst, *, follow_symlinks=True):
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值