import shutil
import os
import os.path
#note:src's file unnecessary to be exist
src="D:\\360Downloads\\testFile1\\folder99\\testFile1.txt"
dst = "D:\\360Downloads\\testFile1\\folder3\\testFile1_dst.txt"
dst2="D:\\360Downloads\\testFile1\\folder3\\testFile1_dst2.txt"
dir1=os.path.dirname(src)
print("dir1 %s "% dir1)
if(os.path.exists(src)== False):
os.makedirs(dir1)
f1 = open(src,"w")
f1.write("line a\n")
f1.write("line b\n")
f1.close()
# test copy file
shutil.copyfile(src,dst)
shutil.copyfile(src,dst2)
f2=open(dst,"r")
for line in f2:
print(line)
f2.close()
# test copy folder Tree
try:
srcDir="D:\\360Downloads\\testFile1"
dstDir="D:\\360Downloads\\testFile99"
shutil.copytree(srcDir,dstDir)
print("copy sucess")
except Exception as err:
print(err)
注意: 运行第一遍,会出现 copy sucess; 运行第二遍, copytree 会报错,因为 目标目录已存在
知识点 :
* shutil.copyfile: 如何复制文件
* os.path.exists: 如何判断文件夹是否存在
* shutil.copytree: 如何复制目录树
运行结果: