具体步骤:
1、在Anaconda创建虚拟环境
Conda create -n 20250417-111 python=3.10
2、启动虚拟环境
conda activate 20250417-111
3、下载包Pillow
pip install Pillow
4、下载pillow-heif
pip install pillow-heif
5、打开pycharm,虚拟环境

6、跑代码
# -------------------------批量转换图片,替换「文件夹」的路径-------------------------------------------
# -------------------------批量转换图片,替换「文件夹」的路径-------------------------------------------
import os
from PIL import Image
from pillow_heif import register_heif_opener
# 注册 HEIF 插件
register_heif_opener()
# 输入文件夹路径
input_folder_path = r"C:\2024pytorchstart\pythonProject2025041619qj" #「输入文件夹」
# 输出文件夹路径
output_folder_path = r"C:\2024pytorchstart\pythonProject2025041619qj\Zhuan-huan-hou-de-images" #「输入文件夹」
# 如果输出文件夹不存在,则创建它
if not os.path.exists(output_folder_path):
os.makedirs(output_folder_path)
# 提示用户选择转换的文件格式
print("请选择转换后的文件格式:")
print("1. JPEG")
print("2. PNG")
print("3. BMP")
# 用户输入转换格式
choice = input("请输入数字(1/2/3):")
# 根据用户选择格式
if choice == "1":
output_format = "JPEG"
extension = ".jpg"
elif choice == "2":
output_format = "PNG"
extension = ".png"
elif choice == "3":
output_format = "BMP"
extension = ".bmp"
else:
print("无效的选择!请输入 1、2 或 3。")
exit()
# 批量处理文件夹中的 HEIF 文件
for filename in os.listdir(input_folder_path):
if filename.lower().endswith(".heic") or filename.lower().endswith(".heif"):
input_file = os.path.join(input_folder_path, filename)
# 打开 HEIF 文件
image = Image.open(input_file)
# 获取没有扩展名的文件名
base_filename = os.path.splitext(filename)[0]
output_file = os.path.join(output_folder_path, base_filename + extension)
# 保存为所选格式
image.save(output_file, output_format)
# 显示转换后的文件路径
print(f"已将文件 {filename} 转换为 {output_format} 格式并保存为: {output_file}")
# 每次都显示转换后的图片
# image.show()
print("批量转换完成!")
# ----------------------------转换「单个」图片-------------------------------------------
# from PIL import Image
# from pillow_heif import register_heif_opener
# import os
#
# # 注册 HEIF 插件
# register_heif_opener()
#
# # 输入 HEIC 文件路径
# input_file = r"C:\2024pytorchstart\pythonProject2025041619qj\classic-car.heic"
#
# # 打开 HEIC 文件
# image = Image.open(input_file)
#
# # 显示原图
# image.show()
#
# # 提示用户选择转换的文件格式
# print("请选择转换后的文件格式:")
# print("1. JPEG")
# print("2. PNG")
# print("3. BMP")
#
# # 用户输入转换格式
# choice = input("请输入数字(1/2/3):")
#
# # 定义输出文件名(不包括扩展名)
# output_file = os.path.splitext(input_file)[0]
#
# # 根据用户选择转换格式
# if choice == "1":
# output_file += ".jpg"
# image.save(output_file, "JPEG")
# print(f"已将文件转换为 JPEG 格式并保存为: {output_file}")
# elif choice == "2":
# output_file += ".png"
# image.save(output_file, "PNG")
# print(f"已将文件转换为 PNG 格式并保存为: {output_file}")
# elif choice == "3":
# output_file += ".bmp"
# image.save(output_file, "BMP")
# print(f"已将文件转换为 BMP 格式并保存为: {output_file}")
# else:
# print("无效的选择!请输入 1、2 或 3。")
#
# # 转换后立即显示图片
# # image.show()
7、成功

选择自己香烟转换的格式

被折叠的 条评论
为什么被折叠?



