python3编写一个整理图片的小脚本

最近学习到python文件管理部分,写了一个自动识别图片长宽,自动分类到不同的文件夹的小脚本。

注:地址按自己电脑实际修改。

import os,glob,shutil
from PIL import Image
#源图片地址
path = r"E:\BaiduYunDownload\图包\*"
#手机壁纸地址
phone = r"E:\BaiduYunDownload\图包\手机"
#电脑壁纸地址
pc = r"E:\BaiduYunDownload\图包\电脑"
files = glob.glob(path)
for f in files:
	if(f.endswith(".png") or f.endswith(".jpeg") or f.endswith(".PNG") or f.endswith(".bmp")):
		fp = open(f,'rb')
		img = Image.open(fp)
		#width为图片的宽度 ,high为图片的高度
		width,high = img.size
		fp.close()
		#高度大于宽度
		if(width<high):
			if not os.path.exists(phone):
				os.makedirs(phone)
			aimfile = phone+"\\"+os.path.split(f)[1]
			shutil.move(f,aimfile)
			print("已经将:{}移动到:{}".format(f,aimfile))
		#宽度大于高度,且宽度分辨率大于1100
		if(width>high and width>1000):
			if not os.path.exists(pc):
				os.makedirs(pc)
			aimfile = pc+"\\"+os.path.split(f)[1]
			shutil.move(f,aimfile)
			print("已经将:{}移动到:{}".format(f,aimfile))

如果遇到:

'gbk' codec can't encode character '\u21d2' in position 44: illegal multibyte sequence print

这样的情况是因为print()不能输出某个字符,例如我这个就是“⇒”这个字符,python的print()不能打印出来,所以我们考虑把print()这个语句删了就可以运行了,或者就是把文件名重命名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值