本文主要是介绍在python中使用shutil库移动和复制文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
写一段python脚本,将文件夹中的文件根据文件名称、属性或者时间将文件分成几个不同种类,并保存到设定好的文件夹中。在这里需要用到几个模块。
- os模块。主要使用该模块的两个功能,一是检查涉及到的文件夹是否存在,如不存在给出解决方案,停止运行或者新建文件 夹。二是listdir(path)提取源文件夹中的文件目录列表,可遍历此列表实现对文件夹中文件的遍历。
- shutil模块。该模块的shutil.move(srcpath, dstpath)用来移动文件,shutil.copyfile(srcfile, dstfile)用来复制文件。
# -*- coding: utf-8 -*-
from os import listdir
import shutil
import os# dic for format <----> dstdir
formatDic = {'jpg': 'original', 'png': "mask"}
# divide image by format
def divideImage(inputDir, outputPath):fileList = listdir(inputDir)for file in fileList:fileformat = file.strip().split('.')[1]if fileformat in formatDic.keys():dstpath = outputPath + '/' + formatDic[str(fileformat)]if not os.path.exists(dstpath):os.makedirs(dstpath)dstpath = dstpath + '/' + filesrcpath = inputDir + '/' + fileshutil.move(srcpath, dstpath)# divideImage('/Users/yuanl/Desktop/test', '/Users/yuanl/Desktop')# match diff dic image by image name
# srcDic: 打码的文件夹 jpg
# original:没打码的包含所有图片文件夹 jpg
# outputDic: 输出文件夹
def matchImage(srcDic, originalDic, outputDic):srcList = listdir(srcDic)if not os.path.exists(outputDic):os.mkdir(outputDic)for file in srcList:shutil.copyfile(originalDic+'/'+file, outputDic+'/'+file)
这篇关于在python中使用shutil库移动和复制文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!