首页 > 解决方案 > 为什么 tkinter 不向我显示图像?

问题描述

每次我尝试将图像加载到我的 tkinter 应用程序时,它都会拒绝加载,而是会出现不同的错误。

我使用了很多不同版本的代码。下面是最新的,它仍然不起作用但会引发错误。

from PIL import Image, ImageTk # I have added the import of ImageTk
import tkinter

window = tkinter.Tk()
window.title("Join")
window.geometry("300x300")
window.configure(background='grey')
imageFile = '\User\PycharmProjects\BRIGHTBROWN\PyShop\tkinter\studentsRecord\myface.jpg'
im1 = ImageTk.PhotoImage(Image.open(imageFile))
panel = tkinter.Label(window, image = im1)
panel.pack(side = "bottom", fill = "both", expand = "yes")

window.mainloop()

抛出的错误是:

SyntaxError:(unicode 错误)“unicodeescape”编解码器无法解码位置 0-1 中的字节:截断 \UXXXXXXXX 转义

标签: pythonimagetkinter

解决方案


问题出在路径上。
让你的你提供完整的路径 "C:\...\User\..."。之后,有几种方法可以修复它:

方法#1:
用正斜杠替换反斜杠。例如: "C:/.../User/..."

方法#2:在字符串后面
使用。r例如:r"C:\...\User\..."

方法#3:
使用双反斜杠。例如:"C:\\...\\User\\..."


推荐阅读