You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python将Excel中单元格的值与对应图片关联?

实现Excel图片评分关联的Python方法

作为Python初学者,你可以按以下步骤完成Excel中图片评分与实际图片的关联:

1. 安装依赖工具库

打开终端,运行以下命令安装所需库:

pip install pandas openpyxl pillow
  • pandas:用于读取和处理Excel数据
  • openpyxl:支持读取.xlsx格式的Excel文件
  • pillow:用于加载和操作图片文件

2. 读取Excel数据并整理成字典

把Excel里的图片名和对应Rating整理成键值对,方便快速匹配查找:

import pandas as pd

# 替换成你的Excel文件实际路径
df = pd.read_excel("你的文件路径.xlsx", engine="openpyxl")

# 将Name列设为索引,提取Rating列转成字典:键为图片名,值为对应评分
pic_rating_map = df.set_index("Name")["Rating"].to_dict()

# 测试匹配效果,输出picture_1的评分
print(pic_rating_map.get("picture_1"))  # 会输出4

3. 关联图片与评分

提供两种实用场景供你选择:

场景1:根据图片名匹配并输出评分

如果你的图片都存放在同一个文件夹(比如./images/),可以遍历图片文件,自动匹配Excel中的评分:

import os
from PIL import Image

# 替换成你的图片文件夹实际路径
image_dir = "./images/"

# 遍历文件夹内所有文件
for filename in os.listdir(image_dir):
    # 只处理.jpeg格式的图片
    if filename.endswith(".jpeg"):
        # 去掉文件后缀,得到和Excel一致的图片名(例:picture_1.jpeg → picture_1)
        pic_name = filename.split(".")[0]
        # 从字典中获取对应评分
        rating = pic_rating_map.get(pic_name)
        if rating is not None:
            print(f"图片 {filename} 对应的评分是:{rating}")
            # 可选:打开图片查看
            img = Image.open(os.path.join(image_dir, filename))
            img.show()
        else:
            print(f"图片 {filename} 在Excel中没有对应记录")

场景2:在图片上直接标注评分

如果想把评分直接显示在图片上,方便直观查看,可以用Pillow的绘图功能:

from PIL import Image, ImageDraw, ImageFont
import os

image_dir = "./images/"
# 替换成你的字体文件路径(Windows可使用系统自带黑体:C:\Windows\Fonts\simhei.ttf)
font = ImageFont.truetype("simhei.ttf", 40)

# 创建保存标注后图片的文件夹(如果不存在)
os.makedirs("./rated_images/", exist_ok=True)

for filename in os.listdir(image_dir):
    if filename.endswith(".jpeg"):
        pic_name = filename.split(".")[0]
        rating = pic_rating_map.get(pic_name)
        if rating:
            img_path = os.path.join(image_dir, filename)
            img = Image.open(img_path)
            draw = ImageDraw.Draw(img)
            # 在图片左上角用红色字体标注评分
            draw.text((10, 10), f"Rating: {rating}", fill="red", font=font)
            # 保存标注后的图片到指定文件夹
            img.save(f"./rated_images/{filename}")
            print(f"已为 {filename} 添加评分标注并保存")

注意事项

  • 确保Excel中Name列的内容和图片文件名(去掉后缀)完全一致,比如Excel里是picture_1,图片就得是picture_1.jpeg
  • 所有路径(Excel路径、图片文件夹路径)要填写正确,相对路径或绝对路径均可
  • 用字体标注评分时,要确保字体文件存在,避免报错

内容的提问来源于stack exchange,提问作者del led

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 23:27:26