python中shutil 实现目标文件的 copy delete move

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Haiqiang1995/article/details/89068564

    在python操作中,大家对os,shutil,sys,等通用库一定不陌生,今天我来简单说下用shutil实现文件的复制,删除,移动等操作

复制

 在shell中copy文件(夹)通常用

cp (-r) source target

 在python中也可以通过os.system(cmd)的方式执行上述命令,或者os自带的模块函数

 但python中其实还有一种很常用的方法,shutil

 shutil.copy() 模块具体用法
    shutil.copy(source, destination)(这种复制形式使用的前提是必须要有 os.chdir(你要处理的路径))
        source/destination 都是字符串形式的路劲,其中destination是:
            1、可以是一个文件的名称,则将source文件复制为新名称的destination
            2、可以是一个文件夹,则将source文件复制到destination中
            3、若这个文件夹不存在,则将source目标文件内的内容复制到destination中

 shutil.copytree() 模块具体用法
    shutil.copytree(source, destination)(这种复制形式无需 os.chdir() 便可操作)
        source 、 destination 可以是不同的文件夹、不同的硬盘空间,
        可以更为方便的实现文件的备份

删除和移动

shutil.rmtree(path[, ignore_errors[, onerror]])

 必须指向一个文件夹,但不能是一个指向文件夹的符号链接。 如果 ` ignore_errors ` 值为真, 则删除失败时的信息将会被忽略。如果值为假或省略,那么这些错误将通过 oneerror 指定的 handler 进行处理; 如果 oneerror被忽略则会发出异常

shutil.move(source,target )

 将一个文件或者文件夹从src移动到dst,如果已存在dst文件夹则会移动到dst内部,如果dst不是文件夹,则会覆盖dst,

shutil.Error

 该异常用于文件操作时捕捉的异常,例如shutil.copytree(),

the exception argument is a list of 3-tuples(srcname,dstname,exception).

猜你喜欢

转载自blog.csdn.net/Haiqiang1995/article/details/89068564