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进阶教程之文本文件的读取和写入
Aug 29 Python
Python多线程爬虫简单示例
Mar 04 Python
详谈pandas中agg函数和apply函数的区别
Apr 20 Python
Python面向对象类编写细节分析【类,方法,继承,超类,接口等】
Jan 05 Python
python学习开发mock接口
Apr 28 Python
Django之编辑时根据条件跳转回原页面的方法
Aug 21 Python
tensorflow 实现数据类型转换
Feb 17 Python
150行Python代码实现带界面的数独游戏
Apr 04 Python
python之随机数函数的实现示例
Dec 30 Python
python matplotlib工具栏源码探析三之添加、删除自定义工具项的案例详解
Feb 25 Python
python之django路由和视图案例教程
Jul 26 Python
python的html标准库
Apr 29 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 array_multisort()函数的使用札记
2011/07/03 PHP
PHP文件锁定写入实例解析
2014/07/14 PHP
PHP+Ajax验证码验证用户登录
2016/07/20 PHP
JavaScript toFixed() 方法
2010/04/15 Javascript
有关js的变量作用域和this指针的讨论
2010/12/16 Javascript
javascript数字数组去重复项的实现代码
2010/12/30 Javascript
javascript读取xml实现javascript分页
2013/12/13 Javascript
JavaScript中用于生成随机数的Math.random()方法
2015/06/15 Javascript
JS组件Bootstrap Table使用方法详解
2016/02/02 Javascript
浅析javascript函数表达式
2016/02/10 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
2016/06/17 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
2016/07/01 Javascript
微信小程序 Video API实例详解
2016/10/02 Javascript
bootstarp modal框居中显示的实现代码
2017/02/18 Javascript
让你5分钟掌握9个JavaScript小技巧
2018/06/09 Javascript
深入了解JavaScript 私有化
2019/05/30 Javascript
JavaScript字符和ASCII实现互相转换
2020/06/03 Javascript
[02:57]2014DOTA2国际邀请赛 选手辛苦解说更辛苦
2014/07/10 DOTA
Python的Django框架中的select_related函数对QuerySet 查询的优化
2015/04/01 Python
详解Django框架中用户的登录和退出的实现
2015/07/23 Python
python中常用的九种预处理方法分享
2016/09/11 Python
python实现读取excel写入mysql的小工具详解
2017/11/20 Python
利用python如何处理百万条数据(适用java新手)
2018/06/06 Python
Python 3 实现定义跨模块的全局变量和使用教程
2019/07/07 Python
Python爬取智联招聘数据分析师岗位相关信息的方法
2019/08/13 Python
pytorch 实现删除tensor中的指定行列
2020/01/13 Python
html5录音功能实战示例
2019/03/25 HTML / CSS
英国的屈臣氏:Boots博姿
2017/12/23 全球购物
英国游戏机和游戏购物网站:365games.co.uk
2018/06/18 全球购物
毕业生文员求职信
2013/11/03 职场文书
成人继续教育实施方案
2014/03/01 职场文书
护理专业毕业生自荐书
2014/05/24 职场文书
摄影展策划方案
2014/06/02 职场文书
矛盾论读书笔记
2015/06/29 职场文书
未来,这5大方向都很适合创业
2019/07/22 职场文书
启迪人心的励志语录:脾气永远不要大于本事
2020/01/02 职场文书