I'm using python2.6 and got a problem this morning. It said 'module' has no attribute 'Image'. Here is my input. Why the first time I can not use PIL.Image?
>>> import PIL >>> PIL.Image Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'module' object has no attribute 'Image' >>> from PIL import Image >>> Image <module 'PIL.Image' from '/usr/lib/python2.6/dist-packages/PIL/Image.pyc'> >>> PIL.Image <module 'PIL.Image' from '/usr/lib/python2.6/dist-packages/PIL/Image.pyc'>
Import the module Image from PIL. Create a variable img and then call the function open() in it. Give the path that has the image file. Call the show() function in joint with img variable through the dot operator “.”.
PIL is the Python Imaging Library which provides the python interpreter with image editing capabilities. The Image module provides a class with the same name which is used to represent a PIL image.
PIL's __init__.py
is just an empty stub as is common. It won't magically import anything by itself.
When you do from PIL import Image
it looks in the PIL package and finds the file Image.py and imports that. When you do PIL.Image
you are actually doing an attribute lookup on the PIL module (which is just an empty stub unless you explicitly import stuff).
In fact, importing a module usually doesn't import submodules. os.path
is a famous exception, since the os module is magic.
More info:
The Image Module
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With