我目前正在开发一个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]没有这样的文件或目录:' Desktop \ example.jpg' 对我没有意义。就在昨天,当我使用PIL库时,我能够很好地显示图像而不会收到此错误消息,但今天我得到的只是此错误消息。我甚至尝试将文件路径指定为C:\但它不会接受它。请有人帮助我,我需要在我的tkinter(GUI)父窗口中获取图像,但是这个库不会允许它。 (P.S我尝试重新安装PIL并且它没有改变,如果您知道任何[易于使用]成像库,请告知我们。)
你应该知道:
以下是我最近收到的错误的图片。我已经为图像提供了一个特定的位置,但我得到了这个恼人的错误。也有人解释为什么即使我只输入了双重[//]空位1.这会影响我的文件位置吗?我很高兴他们黄色,对于大写字母来说很抱歉,我只是因为你的注意力而且我是新的堆叠溢出所以W
是否与此行有关:
答案 0 :(得分:1)
在您的追溯中,您的脚本似乎位于 - C:\Users\Pamal\Desktop\Documents\Python Folder\Python [Learn]\imaging_example.py
但是您正尝试使用相对路径(Desktop\example.jpg
。
这不起作用,除非你的脚本在里面 - C:\Users\Pamal
。
最好是给出绝对路径,例如 - C:\Users\Pamal\Desktop\example.jpg
。
代码 -
load = Image.open(r'C:\Users\Pamal\Desktop\example.jpg')
答案 1 :(得分:1)
更新了代码: 我好像已经解决了这个错误,但我不明白怎么回事。我使用了不同的图像,在我的图片文件夹而不是桌面上,它似乎工作。虽然我不明白为什么??有没有人注意到我的第一个代码和下面这个代码有什么不同?