当前位置:
首页 > Python基础教程 >
-
在Python中批量将`.tif`格式的文件转换为`.jpg`格式
在Python中,批量将`.tif`格式的文件转换为`.jpg`格式,你可以使用`PIL`(Python Imaging Library,现在通常称为`Pillow`)库来读取和保存图像,并使用`os`库来遍历目录中的文件。以下是一个简单的示例脚本,展示如何实现这一功能:
1. 替换`source_dir`和`target_dir`为你自己的路径。
2. 你可以通过`quality`参数(在上述示例中设置为90)来调整JPEG图像的质量。这个值的范围是1(最差质量,文件最小)到95(最佳质量,但文件可能较大)。
3. 如果你的源目录中有子目录,你可能需要递归地遍历它们,这可以通过`os.walk()`函数来实现。但上述示例仅处理源目录中的直接文件。
最后,如果你对python语言还有任何疑问或者需要进一步的帮助,请访问https://www.xin3721.com 本站原创,转载请注明出处:https://www.xin3721.com/Python/python49616.html
import os
from PIL import Image
# 设置源目录和目标目录
source_dir = 'path_to_source_directory_with_tifs' # 替换为你的.tif文件所在的目录
target_dir = 'path_to_target_directory_for_jpgs' # 替换为你希望保存.jpg文件的目录
# 确保目标目录存在
if not os.path.exists(target_dir):
os.makedirs(target_dir)
# 遍历源目录中的所有文件
for filename in os.listdir(source_dir):
if filename.endswith('.tif') or filename.endswith('.TIF'): # 检查文件扩展名
# 打开tif文件
img = Image.open(os.path.join(source_dir, filename))
# 构造新的文件名(将扩展名从.tif更改为.jpg)
base_filename = os.path.splitext(filename)[0]
jpg_filename = f"{base_filename}.jpg"
# 保存为jpg文件
img.save(os.path.join(target_dir, jpg_filename), 'JPEG', quality=90) # 可以设置quality参数来调整JPEG质量
print(f"转换完成!已将所有.tif文件从{source_dir}转换为.jpg文件并保存到{target_dir}。")
注意:from PIL import Image
# 设置源目录和目标目录
source_dir = 'path_to_source_directory_with_tifs' # 替换为你的.tif文件所在的目录
target_dir = 'path_to_target_directory_for_jpgs' # 替换为你希望保存.jpg文件的目录
# 确保目标目录存在
if not os.path.exists(target_dir):
os.makedirs(target_dir)
# 遍历源目录中的所有文件
for filename in os.listdir(source_dir):
if filename.endswith('.tif') or filename.endswith('.TIF'): # 检查文件扩展名
# 打开tif文件
img = Image.open(os.path.join(source_dir, filename))
# 构造新的文件名(将扩展名从.tif更改为.jpg)
base_filename = os.path.splitext(filename)[0]
jpg_filename = f"{base_filename}.jpg"
# 保存为jpg文件
img.save(os.path.join(target_dir, jpg_filename), 'JPEG', quality=90) # 可以设置quality参数来调整JPEG质量
print(f"转换完成!已将所有.tif文件从{source_dir}转换为.jpg文件并保存到{target_dir}。")
1. 替换`source_dir`和`target_dir`为你自己的路径。
2. 你可以通过`quality`参数(在上述示例中设置为90)来调整JPEG图像的质量。这个值的范围是1(最差质量,文件最小)到95(最佳质量,但文件可能较大)。
3. 如果你的源目录中有子目录,你可能需要递归地遍历它们,这可以通过`os.walk()`函数来实现。但上述示例仅处理源目录中的直接文件。
最后,如果你对python语言还有任何疑问或者需要进一步的帮助,请访问https://www.xin3721.com 本站原创,转载请注明出处:https://www.xin3721.com/Python/python49616.html
栏目列表
最新更新
vbscript基础篇 - vbs数组Array的定义与使用方
vbscript基础篇 - vbs变量定义与使用方法
vbs能调用的系统对象小结
vbscript网页模拟登录效果代码
VBScript 根据IE窗口的标题输出ESC
杀死指定进程名称的小VBS
通过vbs修改以点结尾的文件的属性为隐藏
查询电脑开关机时间的vbs代码
VBA中的Timer函数用法
ComboBox 控件的用法教程
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比