编程语言
首页 > 编程语言> > Python--将文件夹中图片按照横屏竖屏进行分类

Python--将文件夹中图片按照横屏竖屏进行分类

作者:互联网

搬运链接:https://www.jianshu.com/p/c8be54282e77

 1 """
 2 可以遍历输入的路径的指定后缀的文件,主要是用来筛选图片,将图片分成
 3 横屏,竖屏分别存放在两个文件夹中
 4 """
 5 from PIL import Image
 6 import os
 7 import os.path
 8 from tqdm import tqdm
 9 import shutil
10 #函数查找指定路径中所有文件的路径
11 #函数查找指定路径中所有文件的路径
12 def get_file(path):
13     list1=[]#用于存储递归查找到的所有文件,传递给函数
14     fileList = os.listdir(path)  # 获取path目录下所有文件
15     for filename in fileList:
16         pathTmp = os.path.join(path,filename) # 获取path与filename组合后的路径
17         if os.path.isdir(pathTmp):  # 如果是目录
18             a=get_file(pathTmp) # 则递归查找(注意一定要有接受变量,不然就出错了)
19             for i in a:
20                 list1.append(i)
21         else: 
22             list1.append(pathTmp)
23     return list1
24 
25 path = input('请输入路径:').strip()  #.strip()去除首尾的空格
26 
27 file_path_list=get_file(path)
28 
29 #筛选后缀函数,传入包含所有后缀名的列表,以及需要筛选的后缀(默认筛选txt文件)
30 def shai_xuan_hou_zhui(file_path_list,hou_zhui='.txt'):
31     
32     list2=[]  #用于储存筛选好的文件的路径
33     for filepath in file_path_list:
34         # os.path.splitext():分离文件名与扩展名
35         if os.path.splitext(filepath)[1] == hou_zhui:
36             list2.append(filepath)
37     #        print(filepath +'\n')
38     
39     return list2
40 
41 # hou_zhui='.jpg'
42 # py_list=shai_xuan_hou_zhui(file_path_list,'.py')  #筛选py文件
43 pig_list=shai_xuan_hou_zhui(file_path_list,'.jpg')   #筛选jpg格式文件
44 # print(txt_list)
45 folder1=  #存放横屏图片的地址
46 folder2= #存放竖屏图片的地址
47 
48 for i in tqdm(range(len(pig_list))):
49     lujing=pig_list[i]
50     picture=Image.open(lujing)
51     width=picture.width
52     height=picture.height
53     picture.close()
54     if width > height:
55         shutil.move(lujing,folder1)
56     else:
57         shutil.move(lujing,folder2)

 

标签:Python,list,hou,竖屏,横屏,file,zhui,path,os
来源: https://www.cnblogs.com/xdd1997/p/11917419.html