ImportError:没有名为_imagingtk的模块

BoJ*_*man 6 python user-interface tkinter python-2.7

我想开始使用python的Tkinter,并有以下代码:

#!/usr/bin/python

from Tkinter import *
from PIL import ImageTk, Image

top = Tk()
dir(top)
top.title("Erstes Frame")

erstesFrame = Frame(top, height=250, width=250)
erstesFrame.pack_propagate(0)
erstesFrame.pack()

img = ImageTk.PhotoImage(Image.open("mario.gif"))

erstesBild = Label(erstesFrame, image = img)

erstesBild.pack()

top.mainloop()
Run Code Online (Sandbox Code Playgroud)

但是当我尝试执行它时,它只是给了我这个错误:

Traceback (most recent call last):
  File "ToDoAPP.py", line 14, in <module>
    img = ImageTk.PhotoImage(Image.open("mario.gif"))
  File "/usr/local/lib/python2.7/dist-packages/PIL/ImageTk.py", line 116, in __init__
    self.paste(image)
  File "/usr/local/lib/python2.7/dist-packages/PIL/ImageTk.py", line 181, in paste
    import _imagingtk
ImportError: No module named _imagingtk
Run Code Online (Sandbox Code Playgroud)

我用python-pip安装了PIL,我的操作系统是ubuntu 12.04,我的python版本是2.7.3

fal*_*tru 18

你需要安装ImageTk模块.

在debian,ubuntu中,您可以使用以下命令来安装它:

sudo apt-get install python-imaging-tk
Run Code Online (Sandbox Code Playgroud)

UPDATE

如果您使用的是最新版本的ubuntu(16.04+),则包名称已更改.

  • python-pil.imagetk (Python 2.x)
  • python3-pil.imagetk (Python 3.x)