python - 为什么 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 转义
解决方案
问题出在路径上。
让你的你提供完整的路径 "C:\...\User\..."
。之后,有几种方法可以修复它:
方法#1:
用正斜杠替换反斜杠。例如:
"C:/.../User/..."
方法#2:在字符串后面
使用。r
例如:r"C:\...\User\..."
方法#3:
使用双反斜杠。例如:"C:\\...\\User\\..."
推荐阅读
- css - 动画 SVG 作为背景图像在 Chrome 但不是 Safari 中工作
- macos - Dyld 错误消息:'库未加载:@executable_path/../../../libsteam_api.dylib'
- express - 是否可以仅使用 expressJS 制作 SPA?
- html - 为什么此媒体查询适用于所有视口宽度?
- python - pandas .corr() 方法的进度条
- c++ - 数组程序的 C++ 协助
- javascript - 如何使长 div 自动滚动直到它到达 div 的底部?
- sql - 使用聚合的计算列仅返回 1 或 0
- hibernate - 休眠查询sql,五条记录但返回两条
- python - 是否可以在不使用 Selenium 的情况下使用 Python 抓取无限滚动的网站?