Python中shutil模块的使用

本文介绍了Python的shutil模块,主要用于高级文件操作,包括复制文件(copyfile, copymode, copystat, copy, copy2)、删除(rmtree)和移动(move)等。copy系列函数详细讲解了不同方法的区别,如是否包含元数据、是否跟随符号链接等。同时提到了递归复制目录的copytree方法和递归删除的rmtree方法。" 79274527,7388409,理解关联分析及其应用,"['数据挖掘', '机器学习', '统计分析', '推荐系统', '数据探索']
摘要由CSDN通过智能技术生成

shutil模块

高级文件操作模块(High-level file operations)

下面粗略的介绍他的一些常用功能

一.关于copy

1.copyfileobj(fsrc, fdst[, length])

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

def copyfileobj(fsrc, fdst, length=16*1024):
    """copy data from file-like object fsrc to file-like object fdst"""
    while 1:
        buf = fsrc.read(length)
        if not buf:
            break
        fdst.write(buf)

从源码很清楚的可以看到,每次从源文件中读取buffer大小的内容写入目标文件。

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

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

3.copymode(src, dst, *, follow_symlinks=True)

仅仅复制权限。

shutil.copymode('test1','test')

os.stat('test1')
os.stat_result(st_mode=33024, st_ino=3419356, st_dev=64768, st_nlink=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值