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

Python Tkinter向页面添加图片报错,寻求解决方法

解决Tkinter添加图片的运行错误

常见错误原因及修复方案

1. 路径转义问题

Windows路径里的反斜杠\会被Python当成转义字符解析,导致程序找不到目标图片文件。

修复方式三选一:

  • 使用原始字符串,在路径前加r:
    Image.open(r'F:\project\ShopManagement\images\psettinground.jpg')
    
  • 把反斜杠替换为正斜杠/:
    Image.open('F:/project/ShopManagement/images/psettinground.jpg')
    
  • 用双反斜杠\\代替单反斜杠:
    Image.open('F:\\project\\ShopManagement\\images\\psettinground.jpg')
    

2. PhotoImage对象被垃圾回收

Tkinter的PhotoImage对象如果没有持久化引用,会被Python的垃圾回收机制清理,导致图片无法显示或抛出错误。

修复方法:将PhotoImage对象绑定到Label的属性上,保留引用:

img_photo.image = photo1in

修正后的完整代码

from PIL import Image, ImageTk
from tkinter import Label

photoforside = Image.open(r'F:\project\ShopManagement\images\psettinground.jpg')
photoforside = photoforside.resize((200, 100))
photo1in = ImageTk.PhotoImage(photoforside)
img_photo = Label(first_frame, image=photo1in, bg="#d4d9cd")
# 绑定引用,避免被垃圾回收
img_photo.image = photo1in
img_photo.place(x=770, y=5, width=200, height=228)

内容的提问来源于stack exchange,提问作者Fathima Nahda

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 05:10:51