python实现将多个文件分配到多个文件夹的方法


Posted in Python onJanuary 07, 2019

如下所示:

import os
import shutil

#path of imgr
path = 'D:\\BaiduNetdiskDownload\\newim\\'

#path of folder
folderPath = 'D:\\BaiduNetdiskDownload\\folderSort\\'

peopleNumber = 61
#new 61 folder numbers as sort_folder_number[61]
sort_folder_number = [x for x in range(0,peopleNumber)]

# makedir 61 folders
'''
demo功能说明:
在folderPath处新建60个文件夹,
图片存储在path处
给每个文件夹分配150张图片(将9000张图片平均分配到60个文件夹)

Tips:
1: os.path.join(path1,path2...)
this function is used to combine the path,it returns a path which is 'path1/path2...'

2: os.makedirs(path)
this function is used to make a directory(new folder) in the path param

3: shutil.move(oldPath,newPath)
this function is used to move file from param1 to param 2

4: os.path.exists(path)
this function is used to check the filePath(param1) whether exists
'''
for number in sort_folder_number:
 new_folder_path = os.path.join(folderPath,'%s'%number)#new_folder_path is ‘folderPath\number'

 if not os.path.exists(new_folder_path):
  os.makedirs(new_folder_path)
  print("new a floder named "+str(number)+'at the path of '+ new_folder_path)

#give the img list
file_list = os.listdir(path)

'''define the first foloderNumber'''
folderNumber = 1
print('there are '+str(len(file_list))+' files at the path of '+path)
for i in range(0,len(file_list)):
 old_file_path = os.path.join(path,str(i)+'.jpg')
 if os.path.isdir(old_file_path):
  '''if the path is a folder,program will pass it'''
  print('img does not exist ,path=' + old_file_path+' it is a dir' )
  pass
 elif not os.path.exists(old_file_path):
  '''if the path does not exist,program will pass it'''
  print('img does not exist ,path='+old_file_path)
  pass
 else:
  '''define the number,it decides how many imgs each people process'''
  number = 150 #int(len(file_list)/peopleNumber)
  if(i%number ==0):
   folderNumber +=1
  new_file_path = os.path.join(folderPath,'%s'%(folderNumber))
  if not os.path.exists(new_file_path):
   print('not exist path:'+new_file_path)
   break
  shutil.move(old_file_path,new_file_path)
  print('success move file from '+ old_file_path +' to '+new_file_path)

以上这篇python实现将多个文件分配到多个文件夹的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python处理json数据中的中文
Mar 06 Python
深度剖析使用python抓取网页正文的源码
Jun 11 Python
Python性能优化的20条建议
Oct 25 Python
Python数据结构之双向链表的定义与使用方法示例
Jan 16 Python
idea创建springMVC框架和配置小文件的教程图解
Sep 18 Python
解析Python的缩进规则的使用
Jan 16 Python
Python enumerate函数功能与用法示例
Mar 01 Python
Python统计一个字符串中每个字符出现了多少次的方法【字符串转换为列表再统计】
May 05 Python
Python的Tkinter点击按钮触发事件的例子
Jul 19 Python
Python无损压缩图片的示例代码
Aug 06 Python
五分钟带你搞懂python 迭代器与生成器
Aug 30 Python
Python中OpenCV实现简单车牌字符切割
Jun 11 Python
在python中使用with打开多个文件的方法
Jan 07 #Python
python读取文件名并改名字的实例
Jan 07 #Python
Python 调用 zabbix api的方法示例
Jan 06 #Python
使用Django2快速开发Web项目的详细步骤
Jan 06 #Python
利用Django提供的ModelForm增删改数据的方法
Jan 06 #Python
Python面向对象类编写细节分析【类,方法,继承,超类,接口等】
Jan 05 #Python
Python面向对象程序设计OOP深入分析【构造函数,组合类,工具类等】
Jan 05 #Python
You might like
在php中取得image按钮传递的name值
2006/10/09 PHP
ThinkPHP3.1新特性之多层MVC的支持
2014/06/19 PHP
js 3种归并操作的实例代码
2013/10/30 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
2015/11/30 Javascript
jQuery实现textarea自动增长宽高的方法
2015/12/18 Javascript
jquery 实现滚动条下拉时无限加载的简单实例
2016/06/01 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
js原生实现FastClick事件的实例
2016/11/20 Javascript
webpack独立打包和缓存处理详解
2017/04/03 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
2017/05/11 Javascript
JS设计模式之状态模式概念与用法分析
2018/02/05 Javascript
node.js使用免费的阿里云ip查询获取ip所在地【推荐】
2018/09/03 Javascript
jQuery扩展方法实现Form表单与Json互相转换的实例代码
2018/09/05 jQuery
NodeJS加密解密及node-rsa加密解密用法详解
2018/10/12 NodeJs
微信小程序实现基于三元运算验证手机号/姓名功能示例
2019/01/19 Javascript
一个Java程序猿眼中的前后端分离以及Vue.js入门(推荐)
2019/04/19 Javascript
基于Nuxt.js项目的服务端性能优化与错误检测(容错处理)
2019/10/23 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
Vue如何循环提取对象数组中的值
2020/11/18 Vue.js
Python实现TCP协议下的端口映射功能的脚本程序示例
2016/06/14 Python
使用Python的Tornado框架实现一个Web端图书展示页面
2016/07/11 Python
Python内置模块turtle绘图详解
2017/12/09 Python
python爬虫爬取快手视频多线程下载功能
2018/02/28 Python
Python GUI Tkinter简单实现个性签名设计
2018/06/19 Python
详解django实现自定义manage命令的扩展
2019/08/13 Python
使用python实现数组、链表、队列、栈的方法
2019/12/20 Python
pycharm新建Vue项目的方法步骤(图文)
2020/03/04 Python
使用html5 canvas创建太空游戏的示例
2014/05/08 HTML / CSS
得到Class的三个过程是什么
2012/08/10 面试题
银行毕业实习自我鉴定
2013/09/19 职场文书
新闻专业大学生找工作的自我评价
2013/10/30 职场文书
致长跑运动员广播稿
2014/01/31 职场文书
交通安全寄语大全
2014/04/08 职场文书
毕业论文致谢范文
2015/05/14 职场文书
Pandas实现DataFrame的简单运算、统计与排序
2022/03/31 Python