jtxs0000 发表于 2020-9-24 11:48:16

如何将多个文件夹里面的图片放在一起

RT
在D:\images下有:abc,abc(1),abc(2)...abc(n)   
还有aaa, aaa(1), aaa(2)。。。。aaa(n)
里面都是图片,然后图片名字也不一样
请问要如何把abc,abc(1),abc(2)...abc(n)里面的图片统一放在abc里面
aaa, aaa(1), aaa(2)。。。。aaa(n) 里面的图片统一方在aaa里面
不知道怎么实现,有大佬会吗{:10_266:}


疾风怪盗 发表于 2020-9-24 11:52:45

先用os模块递归列举出所有文件夹下文件,根据后缀名筛选出图片文件,再调用cmd命令的move,将文件移动到指定文件夹内,这样应该就可以了

kylin121380 发表于 2020-9-24 12:05:26

import os
import shutil


path = '目标文件夹路径'
for each in os.listdir(path):
    if '分类关键词' in each:
      path_1 = path + os.sep + '分类关键词'
      if os.path.exists(path_1):
            shutil.move(path + os.sep + each, path_1)
      else:
            os.mkdir(path_1)
            shutil.move(path + os.sep + each, path_1)

BIO-张磊 发表于 2020-9-24 12:09:18

os和shutil模块

jtxs0000 发表于 2020-9-24 12:13:25

kylin121380 发表于 2020-9-24 12:05


谢谢大佬,我先去试试{:10_275:}

疾风怪盗 发表于 2020-9-24 12:20:43

本帖最后由 疾风怪盗 于 2020-9-24 12:26 编辑

import os, shutil

'''
在D:\images下有:abc,abc(1),abc(2)...abc(n)   
还有aaa, aaa(1), aaa(2)。。。。aaa(n)
里面都是图片,然后图片名字也不一样
请问要如何把abc,abc(1),abc(2)...abc(n)里面的图片统一放在abc里面
aaa, aaa(1), aaa(2)。。。。aaa(n) 里面的图片统一方在aaa里面
'''
file_path = r'D:\python\test\abc'# 目标文件夹
file_list = []

file_all = os.walk(file_path)# 列举出所有文件和文件夹,迭代器
for i in file_all:
    print(i)
    '''
    ('D:\\python\\test\\abc', ['abc (3)', 'abc (5)', 'abc1', 'abc1 (2)', 'abc1 (4)', 'abc2', 'jpg'], [])
    ('D:\\python\\test\\abc\\abc (3)', [], ['1 - 副本 (2) - 副本.jpg'])
    ...
    '''
    for j in i:# 去掉第一个纯文件夹目录
      if len(j) > 0:# 去掉空文件夹
            for k in j:
                if os.path.splitext(k) == '.jpg':# 判断后缀名是否为图片
                  file_list.append(i + os.sep + k)# 组合路径
print(file_list)
for i in file_list:
    shutil.move(i, file_path)# 移动文件

jtxs0000 发表于 2020-9-24 12:28:53

kylin121380 发表于 2020-9-24 12:05


大佬,移是能移了,但确实把整个文件夹都移过去了,能不能只移里面的内容啊,辛苦大佬了{:10_278:}

kylin121380 发表于 2020-9-24 12:59:08

jtxs0000 发表于 2020-9-24 12:28
大佬,移是能移了,但确实把整个文件夹都移过去了,能不能只移里面的内容啊,辛苦大佬了

if 里面加个判断是不是文件的
if '分类关键词' in each and os.path.isfile(path + os.sep + each):
页: [1]
查看完整版本: 如何将多个文件夹里面的图片放在一起