2012-05-17 20 views
22

Soy nuevo en Python cualquier organismo puede por favor ayudaNingún módulo de imagen denominado tk

D:\python\sub>python app.py 
Traceback (most recent call last): 
    File "app.py", line 2, in <module> 
    import ImageTk 
ImportError: No module named ImageTk 
+2

¿Tiene instalada la Biblioteca de imágenes de Python (PIL)? – Josiah

Respuesta

54

Esto dice que python está instalado en una ubicación no estándar por lo que el sistema operativo no puede encontrar ImageTk como se ve en las ubicaciones estándar. Puede volver a instalar Python en una ubicación estándar, y donde eso depende depende de qué sistema operativo y qué instalador está utilizando, o anexar esta ubicación a sys.path. estoy usando Ubuntu 13.04 y me basta con instalar el paquete ImageTk mediante el uso de terminales como:

sudo apt-get install python-imaging-tk 
+12

Si está utilizando Python 3 + Pillow en Ubuntu, el nombre del paquete es 'python3-pil.imagetk'. – kennytm

+0

para obtener información, esto no funcionará para el comando de instalación de pip python-image-tk – vivi

+0

@kennytm Esta es probablemente la respuesta que todos necesitarán hoy. –

2

Es necesario asegurarse de que el módulo de ImageTK se ha instalado. Es parte de la Biblioteca de imágenes de Python (PIL) que se puede encontrar here

También le sugiero que lea el tutorial oficial de Python en Modules.

6

El código que está utilizando debe instalarse por separado de la instalación normal de python, de hecho proviene de la librería PIL (Python Imaging Library) que es una biblioteca externa, un complemento.

Tenga en cuenta que la biblioteca PIL no funciona en python versión 3.0 y posterior, pero todavía está trabajando solo en la serie python 2.x, por lo que si tiene instalado python 3.x, primero debe instalar un python 2.x y luego de descargar e instalar la Biblioteca PIL correspondiente.

Aquí un enlace a la biblioteca PIL, puede descargar desde aquí.

9

Tuve que importar el módulo PIL.ImageTk por separado. La línea de código

 import PIL 

no importar el módulo PIL.ImageTk y he tenido que utilizar, además,

 from PIL import ImageTk 

y luego funcionó bien en el Enthought Canopy 1.0 distribución de Python 2.7.

La necesidad de que la solución se sugirió por esta resolución de errores RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=247171

Esto también podría lograrse con import PIL.ImageTk.

+1

¿Por qué los autores de PIL eligen omitir 'import ImageTk' de PIL/__ init__.py? –

Cuestiones relacionadas