我正在尝试传递图像的路径,然后打开它,但我收到此行的此错误image = Image.open(path):属性错误:类型对象“图像”没有属性“打开”from PIL import Imagefrom tkinter import *class Menu: def __init__(self,root): self.root = root self.root.title("Image") self.image_entry = Entry(root) self.image_entry.grid(row=0,column=1) image_label = Label(root,text = "Enter the path of the image").grid(row=0) images = Button(root,text="Show",command=lambda:[self.show(self.image_entry)]).grid(row=1,column=1) root.mainloop() def show(self,image_entry): path=image_entry.get() image = Image.open(path) image.show()
1 回答
慕容3067478
TA贡献1773条经验 获得超3个赞
Image
从 PIL 导入的变量正在被Image
从 Tkinter 导入的变量覆盖。
可能的解决方案,按最佳实践的降序排列:
不要使用 .tkinter 从 tkinter 导入东西
import *
。尝试仅导入您需要的名称,例如from tkinter import Entry, Label, Button, Tk
.为 PIL 选择一个
Image
与 Tkinter 的Image
. 例如,from PIL import Image as PILImage
。切换导入的顺序,以便 PIL
Image
覆盖 Tkinter 的Image
,而不是相反。
添加回答
举报
0/150
提交
取消