我目前正在研究一个 tkinter (GUI) 项目,该项目接收用户的平均值并将其返回给他们。我希望使用 PIL 库在我的父窗口中显示图像。昨天这个库工作正常并且在目录中找到我的图像,但今天它似乎无法找到目录,有人可以帮助我并指导我。我不知道为什么 PIL 库今天运行起来,通常它工作正常。 (我试过重新安装文件但没有帮助!)。
这是我的代码
import tkinter
from PIL import Image, ImageTk
root = tkinter.Tk();
def showImg():
load = Image.open('Desktop\example.jpg')
render = ImageTk.PhotoImage(load)
img = tkinter.Label(root, image = render)
img.image = render
img.pack()
button = tkinter.Button(root, text='Click me to see an image.', command=showImg).pack();
root.title('Imaging test');
root.geometry('450x450');
root.mainloop();
这是我的错误:
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python34\lib\tkinter__init__.py", line 1533, in __call__
return self.func(*args)
File "C:\Users\Pamal\Desktop\Documents\Python Folder\Python [Learn]\imaging_example.py", line 7, in showImg
load = Image.open('Desktop\example.jpg')
File "C:\Python34\lib\site-packages\PIL\Image.py", line 2219, in open
fp = builtins.open(fp, "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'Desktop\\example.jpg
文本 FileNotFoundError: [Errno 2] No such file or directory: ‘Desktop\example.jpg’ 对我来说毫无意义。就在昨天,当我使用 PIL 库时,我能够正常显示图像而没有收到此错误消息,但今天我得到的只是此错误消息。我什至尝试指定 C:\ 之前的文件路径,但它不会接受。请有人帮助我,我需要在我的 tkinter (GUI) 父窗口中获取图像,但这个库不允许。 (附言:我已经尝试重新安装 PIL,但一点也没有改变,如果您知道任何 [easy to use] 图像库,请告诉我它们)。
你应该知道:
- 我在 Python 3.4.2 上运行
- Windows 8.1 机器
- 我不是 Python 专家,所以请不要给我看一些复杂的代码。
下面是我收到的最近错误的图片。我已经为图像提供了一个特定的位置,但我收到了这个烦人的错误。也有人解释为什么即使我只输入了双 [ // ] 斜线 1。这会影响我的文件位置吗?我已经用黄色突出显示了它们,很抱歉没有大写字母,我只是想引起你的注意,而且我是堆栈溢出的新手,所以哇哦:P
它与这一行有关吗:
原文由 user4610150 发布,翻译遵循 CC BY-SA 4.0 许可协议
从您的回溯中,您的脚本似乎位于 -
C:\Users\Pamal\Desktop\Documents\Python Folder\Python [Learn]\imaging_example.py
但是您正在尝试使用相对路径 -
Desktop\example.jpg
访问内部(桌面文件夹)中的内容。这是行不通的,除非您的脚本在 -
C:\Users\Pamal
中。最好给出绝对路径,例如 -
C:\Users\Pamal\Desktop\example.jpg
。代码 -