Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get Python Pillow (PIL) version?

I would like to get the PIL (Python Imaging Library) version installed on a Mac OS X computer. I've previously installed Pillow, a more friendly fork of PIL.

I've tried:

import PIL
print('PIL',PIL.__version__)

And I've got the error:

AttributeError: module 'PIL' has no attribute '__version__'
like image 727
Claude COULOMBE Avatar asked Jun 24 '17 18:06

Claude COULOMBE


People also ask

How do I find my PIL version?

Step 2: To check if PIL is successfully installed, open up the python terminal by typing python3 in the terminal. This will open up the python3 interactive console now type the following command to check the current version of the PIL. This will output the currently installed version of the PIL.

What is the latest version of PIL?

The latest version of PIL is 1.1.

What version of Python does Pillow support?

Pillow < 2.0. 0 supports Python versions 2.4, 2.5, 2.6, 2.7; Pillow >= 2.0. 0 supports Python versions 2.6, 2.7, 3.2, 3.3.


2 Answers

Use PIL.__version__ or Image.__version__.

Before Pillow version 6.0.0, its version string could be accessed via the following variable names:

>>> PIL.version.__version__
'5.1.0'
>>> PIL.PILLOW_VERSION
'5.1.0'
>>> PIL.__version__
'5.1.0'
>>>

Not to be confused with the last PIL version that Pillow is built on (and thus hangs on to):

>>> PIL.VERSION
'1.1.7'

There was no information on this in the documentation regarding the fork from PIL: https://pillow.readthedocs.io/en/5.1.x/about.html#why-a-fork

However, PIL's homepage states

Status
The current free version is PIL 1.1.7. This release supports Python 1.5.2 >and newer, including 2.5 and 2.6. A version for 3.X will be released later.

That release is dated "November 15, 2009".

This confirms it's just PIL's last release version.


For future/further digging:

The version string is defined in these source files: https://github.com/python-pillow/Pillow/blob/master/src/PIL/version.py and https://github.com/python-pillow/Pillow/blob/master/src/PIL/__init__.py, or search for all occurences of __version__ in the repository.

(On my Windows, this is installed to %LocalAppData%\Programs\Python\Python36\Lib\site-packages\PIL\version.py)


**Update**

https://pillow.readthedocs.io/en/stable/releasenotes/5.2.0.html

5.2.0 API Changes Deprecations

These version constants have been deprecated. VERSION will be removed in Pillow 6.0.0, and PILLOW_VERSION will be removed after that.

`PIL.VERSION` (old PIL version 1.1.7)
`PIL.PILLOW_VERSION`
`PIL.Image.VERSION`
`PIL.Image.PILLOW_VERSION`

Use PIL.__version__ instead.

https://pillow.readthedocs.io/en/stable/releasenotes/6.0.0.html

6.0.0 Backwards Incompatible Changes

Removed deprecated VERSION

VERSION (the old PIL version, always 1.1.7) has been removed. Use __version__ instead.


2021-12 - this answer is still correct:
>>> import PIL
>>> PIL.__version__
'8.4.0'
>>> from PIL import Image
>>> Image.__version__
'8.4.0'
>>> Image.__version__ is PIL.__version__
True
like image 172
handle Avatar answered Sep 19 '22 05:09

handle


To get the version for PIL do

>>> PIL.VERSION
'1.1.7'

Edit:

This gives you only the PIL version not the Pillow version. See this answer for more detail.

like image 39
Shreyash S Sarnayak Avatar answered Sep 17 '22 05:09

Shreyash S Sarnayak