Asma Gheisari
Asma Gheisari

Reputation: 6254

ImportError: No module named PIL

I use this command in the shell to install PIL:

easy_install PIL

then I run python and type this: import PIL. But I get this error:

Traceback (most recent call last):
  File "<console>", line 1, in <module>
ImportError: No module named PIL

I've never had such problem, what do you think?

Upvotes: 395

Views: 1505461

Answers (30)

Muhammad Umar
Muhammad Umar

Reputation: 229

I also faced the same issue, and solved by changing the python interpreter version

Upvotes: -1

Sneezy_HD
Sneezy_HD

Reputation: 69

I installed Pillow through my terminal which used Python 3.11. My IDE (PyCharm) was set to Python 3.12 as an interpreter. I changed that and it worked.

Upvotes: 1

zhiming wang
zhiming wang

Reputation: 5529

In shell, run:

pip install Pillow

Attention: PIL is deprecated, and pillow is the successor.

Upvotes: 548

MD. Mohiuddin Ahmed
MD. Mohiuddin Ahmed

Reputation: 2172

This worked for me on Ubuntu 20.04:

pip install image

And in script:

import image

Upvotes: 5

Cyebukayire
Cyebukayire

Reputation: 948

I had the same issue on windows 10 and this worked for me:

pip install Pillow

Upvotes: 7

Srinivas Ramakrishna
Srinivas Ramakrishna

Reputation: 1335

The cleanest way to resolve this issue is by following below steps.

Step 1: Uninstall the PIL package.

pip uninstall PIL

Step 2: Install the Pillow using pip as shown below on windows operating systems. For other environments checkout the article No module named PIL

On Windows

python3 -m pip install --upgrade pip
python3 -m pip install --upgrade Pillow

Step 3: The most crucial class in the Python Imaging Library is the Image class, and you can import this as shown below.

from PIL import Image
im = Image.open("myimage.jpg")

If successful, this function returns an Image object. You can now use instance attributes to examine the file contents:

print(im.format, im.size, im.mode)

#Output: PPM (512, 512) RGB

Upvotes: 9

Mohamed Berrimi
Mohamed Berrimi

Reputation: 148

According to the official websiteInstall Pillow, you may want to try this:

go to Terminal and run:

  • python3 -m pip install --upgrade pip

Then Run on

  • source ~/.bash_profile

Upvotes: -1

Thesonter
Thesonter

Reputation: 300

I found an easier solution. Use a virtual environment.

pip install Pillow
from PIL import Image

This works for me on a macOS

Upvotes: 1

Shantanu Bombatkar
Shantanu Bombatkar

Reputation: 185

Install Specific Version:

pip install Pillow

Upgrade Pillow

sudo pip3 install --upgrade Pillow

Getting Dependency Error in Window 10 Use code: easy_install instead of pip install

easy_install Pillow 

Upgrade using easy install

sudo easy_install --upgrade  Pillow

On OSX System to install Module: Use code: brew install instead of pip install

brew install Pillow 

Without Using Pip :

 sudo apt-get install -y Pillow 

On CentOS7 or Linux Fedora:

yum -y install Pillow 

Or on Fedora try

sudo dnf install Pillow 

Command if Homebrew screws up your path on macOS:

python -m pip install Pillow 

For Python3 MacOs Homebrew screws

python3 -m pip install Pillow

Verify module from list MacOs

pip freeze | grep  Pillow

For Execute on Anaconda as your python package manager

 conda install -c anaconda Pillow 

Upvotes: 13

Eric O. Lebigot
Eric O. Lebigot

Reputation: 94475

On some installs of PIL, you must do

import Image

instead of import PIL (PIL is in fact not always imported this way). Since import Image works for you, this means that you have in fact installed PIL.

Having a different name for the library and the Python module is unusual, but this is what was chosen for (some versions of) PIL.

You can get more information about how to use this module from the official tutorial.

PS: In fact, on some installs, import PIL does work, which adds to the confusion. This is confirmed by an example from the documentation, as @JanneKarila found out, and also by some more recent versions of the MacPorts PIL package (1.1.7).

Upvotes: 185

Goob-The-Noob
Goob-The-Noob

Reputation: 35

I had the same issue and tried many of the solutions listed above.

I then remembered that I have multiple versions of Python installed AND I use the PyCharm IDE (which is where I was getting this error message), so the solution in my case was:

In PyCharm:

go to File>Settings>Project>Python Interpreter

click "+" (install)

locate Pillow from the list and install it

Hope this helps anyone who may be in a similar situation!

Upvotes: 0

Newt
Newt

Reputation: 887

pip(3) uninstall Pillow
pip(3) uninstall PIL
pip(3) install Pillow

Upvotes: 5

Jortega
Jortega

Reputation: 3790

Python 3.8 on Windows 10. A combination of the answers worked for me. See below for a standalone working example. The commented out lines should be executed in the command line.

import requests
import matplotlib.pyplot as plt
# pip uninstall pillow
# pip uninstall PIL
# pip install image
from PIL import Image
url = "https://images.homedepot-static.com/productImages/007164ea-d47e-4f66-8d8c-fd9f621984a2/svn/architectural-mailboxes-house-letters-numbers-3585b-5-64_1000.jpg"
response = requests.get(url, stream=True)
img = Image.open(response.raw)
plt.imshow(img)
plt.show()

Upvotes: 0

Newt
Newt

Reputation: 887

use pil instead of PIL

from pil import Image

Upvotes: 2

I used :

from pil import Image

instead of

from PIL import Image

and it worked for me fine

wish you bests

Upvotes: 1

andrew pate
andrew pate

Reputation: 4291

On windows 10 I managed to get there with:

cd "C:\Users\<your username>\AppData\Local\Programs\Python\Python37-32" 
python -m pip install --upgrade pip     <-- upgrading from 10.something to 19.2.2.
pip3 uninstall pillow
pip3 uninstall PIL
pip3 install image

after which in python (python 3.7 in my case) this works fine...

import PIL
from PIL import image

Upvotes: 16

cromastro
cromastro

Reputation: 301

I used:

pip install Pillow 

and pip installed PIL in Lib\site-packages. When I moved PIL to Lib everything worked fine. I'm on Windows 10.

Upvotes: 15

Ori Barmatz
Ori Barmatz

Reputation: 41

I had the same problem and i fixed it by checking what version pip (pip3 --version) is, then realizing I'm typing python<uncorrect version> filename.py instead of python<correct version> filename.py

Upvotes: 1

Geoff
Geoff

Reputation: 462

I used conda-forge to install pillow version 5, and that seemed to work for me:

conda install --channel conda-forge pillow=5

the normal conda install pillow did NOT work for me.

Upvotes: 1

saigopi.me
saigopi.me

Reputation: 14908

instead of PIL use Pillow it works

easy_install Pillow

or

pip install Pillow

Upvotes: 6

Conor Cosnett
Conor Cosnett

Reputation: 1306

if you use anaconda:

conda install pillow

Upvotes: 8

azdoud
azdoud

Reputation: 1229

you have to install Image and pillow with your python package.

type

python -m pip install image 

or run command prompt (in windows), then navigate to the scripts folder

cd C:\Python27\Scripts

then run below command

pip install image

Upvotes: 17

Dipanshu Sehjal
Dipanshu Sehjal

Reputation: 79

You will need to install Image and pillow with your python package. Rest assured, the command line will take care of everything for you.

Hit

python -m pip install image

Upvotes: 6

grooveplex
grooveplex

Reputation: 2529

This worked for me on Ubuntu 16.04:

sudo apt-get install python-imaging

I found this on Wikibooks after searching for about half an hour.

Upvotes: 26

user285594
user285594

Reputation:

On Windows, you need to download it and install the .exe

https://pypi.python.org/pypi/Pillow/2.7.0

Upvotes: 1

Damian
Damian

Reputation: 2788

On a different note, I can highly recommend the use of Pillow which is backwards compatible with PIL and is better maintained/will work on newer systems.

When that is installed you can do

import PIL 

or

from PIL import Image

etc..

Upvotes: 72

Orhan Celik
Orhan Celik

Reputation: 1575

At first install Pillow with

pip install Pillow

or as follows

c:\Python35>python -m pip install Pillow

Then in python code you may call

from PIL import Image

"Pillow is a fork of PIL, the Python Imaging Library, which is no longer maintained. However, to maintain backwards compatibility, the old module name is used." From pillow installed, but "no module named pillow" - python2.7 - Windows 7 - python -m install pillow

Upvotes: 73

Johan
Johan

Reputation: 1

I recently installed Leap. I Tried openshot and it didn't start. So came here and found a suggestion to start from the Terminal to see if there were any error.

The error I had was error missing mlt. So I installed the python-mlt module from Yast and imported it, tried to start but next openshot said missing pil.

I Followed the Pillow suggestion to install because Yast couldn't find any pil and imported pil. That went ok but did not start and showed Error missing goocanvas.

The I installed goocanvas with Yast, imported it in python, and Openshot fired up !!

With a lot of errors in the terminal like missing Vimeoclient and lots of attributeerrors. Well, will see if it is of any influence working with it.

Upvotes: 0

Prateek Jain
Prateek Jain

Reputation: 1

I had the same issue while importing PIL and further importing the ImageTk and Image modules. I also tried installing PIL directly through pip. but not success could be achieved. As in between it has been suggested that PIL has been deprectaed, thus, tried to install pillow through pip only. pillow was successfully installed, further, the PIL package was made under the path : python27/Lib/site-packages/.

Now both Image and ImageTk could be imported.

Upvotes: -1

Fernando Munoz
Fernando Munoz

Reputation: 4919

Sometimes I get this type of error running a Unitest in python. The solution is to uninstall and install the same package on your virtual environment.

Using this commands:

pip uninstall PIL

and

pip install  PIL 

If for any reason you get an error, add sudo at the beginning of the command and after hitting enter type your password.

Upvotes: 27

Related Questions