Python3 批量修改JPG图片尺寸
功能
- 批量修改当前文件夹下的jpg图片到设置的尺寸
- 将修改后的图片移动到
new_img
这个文件夹下
导入库
from PIL import Image # 处理图片模块 import os import shutil # 移动文件模块
如果没有请提前安装相应的库.
定义一个函数用来处理图片尺寸
def smaller_img(x, y, path): # x,y用来传入尺寸,path用来传入路径 old_img = Image.open(path) img_deal = old_img.resize((x, y), Image.ANTIALIAS) # 转换图片 img_deal = img_deal.convert('RGB') # 保存为jpg格式才需要 img_deal.save('新的文件名')
遍历当前文件夹下的文件路径
now_path = os.getcwd() new_path = os.mkdir(now_path + '\\' + 'new_img') # 创建一个名为new_img的文件夹 for file_name in os.listdir(now_path): files_path = now_path + '\\' + file_name print(files_path) # 输出当前目录下所有的文件的绝对路径
将修改后的图片移动到创建的新文件夹
我使用笨办法,用字符串判断的方式,来确定是否是修改后的图片文件.shutil
模块参考链接
for move_name in os.listdir(now_path): move_path = now_path + '\\' + move_name if 'switch' in move_path: shutil.move(move_path,new_dir) # shutil.move(文件/目录 , 目录) else: print(move_path, '无须移动')
把这些功能整合起来
from PIL import Image import os import shutil x = input('请输入需要修改的尺寸,长:') x = int(x) y = input('请输入需要修改的尺寸,高:') y = int(y) now_path = os.getcwd() new_path = os.mkdir(now_path + '\\' + 'new_img') new_dir = now_path + '\\' + 'new_img' # 修改图片大小 def smaller_img(x, y, path): path = str(path) old_img = Image.open(path) img_deal = old_img.resize((x, y), Image.ANTIALIAS) img_deal = img_deal.convert('RGB') img_deal.save('switch_' + file_name) # 遍历文件夹下的文件,并判断是否是JPG文件 for file_name in os.listdir(now_path): files_path = now_path + '\\' + file_name if 'jpg' in files_path: smaller_img(x, y, files_path) # 遍历文件来判断是否是转换后的jpg文件 for move_name in os.listdir(now_path): move_path = now_path + '\\' + move_name if 'switch' in move_path: shutil.move(move_path,new_dir) else: print(move_path, '无须移动') print(file_name, 'switch success') else: print(file_name, 'is not img')
结束语
有错误的地方请指出,请大家多多批评
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
匠心之作 | 厉害了!阿里云自研存储引擎X-Engine又发顶会啦
1、What is X-Engine X-Engine是阿里云自研OLTP数据库存储引擎,已经广泛应用于包括钉钉、核心交易、阿里妈妈在内的阿里巴巴核心业务,在提供高性能的同时大幅降低了存储开销。 经过阿里双十一等高压场景的考验与打磨,RDS MySQL(X-Engine)版即将在阿里云上向外部客户提供服务,将技术红利带给云上用户。 X-Engine:An Optimized Storage Engine for Large-scale E-Commerce Transaction Processing 介绍了X-Engine的系统架构以及核心设计,发表在SIGMOD'19 Industrial Track。 近日,X-Engine团队的另一项工作FPGA-Accelerated Compactions for LSM-based Key-
- 下一篇
quickly 1.4 版本发布,快速前端切图css框架
演示地址 http://www.qietu.com/quickly/v1.4/ 关于框架 quicklyCSS框架曾用名 ThinkCSS,QuickCSS ,是武汉切图网络技术有限公司(简称切图网)基于多年前端外包经验开发的一套快速响应式切图框架。 更新记录 增加了html基值的设置,采用rem重置了字体大小 重新定义了响应式区间 /* 电脑大屏--lg*/ .qui-wrapper{ width: 1170px; } /* 电脑小屏--md */ @media screen and (max-width:1200px){ .qui-wrapper{ width: 970px; } } /* 平板--sm */ @media screen and (max-width:992px){ .qui-wrapper{ width: 750px; } } /* 手机 xs*/ @media screen and (max-width:768px){ .qui-wrapper{ width: 100%; } } 通过font-family定义了数字字体样式 集成了swiper.js滑块插件 /...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker安装Oracle12C,快速搭建Oracle学习环境