我很困惑为什么我得到这个错误。我已经查看了错误中指定的文件,并对PIL和实际错误做了一些研究。任何帮助都将不胜感激。这段代码是一个示例代码,它不属于我。我正在学习一个教程,我正在尝试为python学习一个新的gui模块。
代码:
from PIL import Image, ImageTk
from Tkinter import Tk, Label, BOTH
from ttk import Frame, Style
class Example(Frame):
def __init__(self, parent):
Frame.__init__(self, parent)
self.parent = parent
self.initUI()
def initUI(self):
self.parent.title("Picture")
self.pack(fill=BOTH, expand=1)
Style().configure("TFrame", background="#333")
bard = Image.open("test.jpg")
bardejov = ImageTk.PhotoImage(bard)
label1 = Label(self, image=bardejov)
label1.image = bardejov
label1.place(x=20, y=20)
def main():
root = Tk()
root.geometry("300x280+300+300")
app = Example(root)
root.mainloop()
if __name__ == '__main__':
enter code heremain()
错误:
Traceback (most recent call last):
File "C:/Python27/pics.py", line 36, in <module>
main()
File "C:/Python27/pics.py", line 31, in main
app = Example(root)
File "C:/Python27/pics.py", line 12, in __init__
self.initUI()
File "C:/Python27/pics.py", line 22, in initUI
bardejov = ImageTk.PhotoImage(bard)
File "C:\Python27\lib\site-packages\PIL\ImageTk.py", line 116, in __init__
self.paste(image)
File "C:\Python27\lib\site-packages\PIL\ImageTk.py", line 181, in paste
import _imagingtk
ImportError: DLL load failed: %1 is not a valid Win32 application.
答案 0 :(得分:1)
"ImportError: DLL load failed: %1 is not a valid Win32 application."
来自Windows本身,意味着您的PIL或Tkinter安装无法在您的Windows版本上运行。
这样做的一个潜在原因是您在Windows XP上使用的是使用VS 2012构建的版本;见:
http://blogs.msdn.com/b/vcblog/archive/2012/06/15/10320645.aspx