讲解
1、库:os,shutil.copy
2、代码效果:对指定文件夹内文件等量分配到新的文件夹
3、代码原理:用os.listdir()遍历文件同时用shutil.copy实现复制转存
通过import os模块中提供的功能,可以实现python对操作系统中文件和目录的操作。
os.path.abspath(path),显示path在操作系统中的绝对路径
os.path.join(path, x),将path和x拼接成当前操作系统兼容的路径形式
os.listdir(path),输出当前目录下的文件及子目录为list类型
os.path.isdir(path) and os.path.isfile(path)判断路径为目录还是文件,注意参数为path,之前在这里出现了很多错误,直接输文件名的话,没有该文件就直接显示False
代码
import os from shutil import copy def folder_segmentation(path, new_path): i = 0 k = 0 save_dir = new_path if not os.path.isdir(save_dir): os.makedirs(save_dir) file_path = path dir_name = ""#新文件夹命名 pathDir = os.listdir(file_path) for allDIR in pathDir: if ((i % 3) == 0):#每3个放置在一个新的文件夹里 k += 1 from_path = os.path.join(file_path, allDIR) to_path = save_dir + "\\" + dir_name + str(k) if not os.path.isdir(to_path): os.makedirs(to_path) copy(from_path, to_path) i += 1 if __name__ == "__main__": path = ""#原文件夹路径 new_path = ""#保存文件夹路径 folder_segmentation(path, new_path)
运行结果
运行前
产生文件夹
文件夹内部效果(我设置的是3个一提取)
总结
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)