shutil模块学习

shutil模块学习

copy

将源文件的内容复制到目标文件或目录。它还会保留文件的权限模式,但不会保留文件的其他元数据(例如文件的创建和修改时间)。

用法:

shutil.copy(source, destination, *, follow_symlinks = True)

参数:
source:代表源文件路径的字符串。
destination:代表目标文件或目录路径的字符串。
follow_symlinks(可选):此参数的默认值为True。如果为False,并且source表示符号链接,则目标将创建为符号链接。

Note:参数列表中的“ *”表示以下所有参数(此处为“ follow_symlinks”)仅是关键字参数,可以使用其名称(而不是位置参数)来提供。

返回类型:此方法返回一个表示新创建文件路径的字符串。

实例

source = r'D:\dataset\indoor\train\airport_inside\airport_inside_0001.jpg'
destination = r'D:\dataset\indoor\test\1'
shutil.copy(“source,destination) 

copy2

将源文件的内容复制到目标文件或目录。此方法与shutil.copy()方法,但它还会尝试保留文件的元数据。

shutil.copy2(source, destination, *, follow_symlinks = True)

参数:
source:代表源文件路径的字符串。
destination:代表目标文件或目录路径的字符串。
follow_symlinks(可选):此参数的默认值为True。如果为False,并且source表示符号链接,则它将尝试将所有元数据从源符号链接复制到newly-created目标符号链接。此函数取决于平台。

Note:参数列表中的“ *”表示以下所有参数(此处为“ follow_symlinks”)仅是关键字参数,可以使用其名称(而不是位置参数)来提供。

*返回类型:*此方法返回一个表示新创建文件路径的字符串。

实例

import shutil

#shutil.copy2(【要被复制的文件】,【复制后存放的位置】)
shutil.copy2("D:/TOOLS/public.txt","D:/fart/a/b/c/d/e/kok/")

import shutil

#shutil.copy2(【要被复制的文件】,【复制后存放的文件】)
shutil.copy2("D:/TOOLS/public.txt","D:/fart/a/b/c/d/e/kok/HH.txt")
shutil.copy2("D:/TOOLS/public.txt","D:/fart/a/b/c/d/e/kok/HH.so")
shutil.copy2("D:/TOOLS/public.txt","D:/fart/a/b/c/d/e/kok/666")

copyfile

将源文件的内容复制到目标文件。

用法

shutil.copyfile(source, destination, *, follow_symlinks = True)

参数:
source:代表源文件路径的字符串。
destination:代表目标文件路径的字符串。
follow_symlinks(可选):此参数的默认值为True。如果为False且source表示符号链接,则将创建一个新的符号链接,而不是复制文件。

Note:参数列表中的“ *”表示以下所有参数(此处为“ follow_symlinks”)仅是关键字参数,可以使用其名称(而不是位置参数)来提供。

返回类型:此方法返回一个表示新创建文件路径的字符串。

实例

argetdir_path = 'W:\Solar Radiation\Data\Data_original\Temp_data\梯度塔结果\\' + upfile
Targetfile_path = 'W:\Solar Radiation\Data\Data_original\Temp_data\梯度塔结果\\' + upfile + '\\' + data_name
if not os.path.exists(Targetdir_path):
	os.mkdir(Targetdir_path)
shutil.copyfile(file, Targetfile_path)

copyfileobj

将file-like对象的内容复制到另一个file-like对象。

用法

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

参数:
fsrc:一个file-like对象,表示要复制的源文件
fdst:代表目标文件的file-like对象,将fsrc复制到其中。
length (optional):表示缓冲区大小的整数值。
File-like对象主要是StringIO对象,连接的套接字和实际文件对象。

返回类型:此方法不返回任何值。

shutil.copyfileobj(fsrc, fdst) 

copymode

将权限位从给定的源路径复制到给定的目标路径

用法:用法:

 shutil.copymode(source, destination, *, follow_symlinks = True)

参数:
source:代表源文件路径的字符串。
destination:代表目标文件路径的字符串。
follow_symlinks(可选):此参数的默认值为True。如果为False且source和destination两者都引用了符号链接,则shutil.copymode()方法将尝试修改目标模式(即符号链接)本身而不是其指向的文件。

Note:参数列表中的“ *”表示以下所有参数(此处为“ follow_symlinks”)仅是关键字参数,可以使用其名称(而不是位置参数)来提供。

*返回类型:*此方法不返回任何值

copystat

将权限位,最后访问时间,最后修改时间和标志值从给定的源路径复制到给定的目标路径

用法: shutil.copystat(source, destination, *, follow_symlinks = True)

参数:
source:代表源文件路径的字符串。
destination:代表目标文件路径的字符串。
follow_symlinks(可选):此参数的默认值为True。如果为False,并且源和目标均都引用符号链接,则shutil.copystat()方法将对符号链接本身(而不是符号链接引用的文件)进行操作。

*返回类型:*此方法不返回任何值。

copytree

以递归方式将以源(src)为根的整个目录树复制到目标目录

用法

shutil.copytree(src, dst, symlinks = False, ignore = None, copy_function = copy2, igonre_dangling_symlinks = False)

参数:
src: A string representing the path of the source directory.
dest: A string representing the path of the destination.

返回值: This method returns a string which represents the path of newly created directory.

实例

import shutil
shutil.copytree(D:\data,E:\Test\data)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值