2014-04-01 12 views
6

ho voluto iniziare a utilizzare Tkinter con Python e hanno seguente codice:ImportError: No module named _imagingtk

#!/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() 

Ma quando provo ad eseguirlo, semplicemente mi dà questo errore:

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 

Ho installato PIL con python-pip e il mio sistema operativo è ubuntu 12.04 e la mia versione python è 2.7.3

risposta

16

È necessario installare il modulo ImageTk.

In Debian, Ubuntu, è possibile utilizzare seguente comando per installarlo:

sudo apt-get install python-imaging-tk 

UPDATE

Se si sta utilizzando la versione recente di Ubuntu (16.04+), il nome del pacchetto è cambiato .

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

Può essere installato tramite pip? – dm76

+0

@ dm76, scusate, non l'ho mai provato. Non ne sono sicuro. – falsetru

+0

Ho già quel pacchetto, Versione: 2.6.1-2, e sto ancora ricevendo l'errore. – appas

4

Come notato da falsetru, è necessario installare il modulo ImageTk prima: non arriva automaticamente con Pitone. Per fare questo, eseguire uno dei seguenti comandi:

Se stai usando Python 2.x, utilizzare questo comando:

sudo apt-get install python-imaging-tk 

Se stai usando Python 3.x, utilizzare questo comando:

sudo apt-get install python3-pil.imagetk 
+0

Grazie per il suggerimento. Triste, questo non è stato risolto nemmeno su nuove distribuzioni come Ubuntu 16.04.1 LTS. – MarkHu

0

Giusto per aggiungere alle risposte qui, su Ubuntu 16.04 il nome del pacchetto è leggermente diversa (anche per Python 2):

sudo apt-get install python-pil.imagetk

Problemi correlati