请使用PIL.__version__
或者Image.__version__
。
在Pillow版本6.0.0之前,可以通过以下变量名称访问它的版本字符串:
>>> PIL.version.__version__
'5.1.0'
>>> PIL.PILLOW_VERSION
'5.1.0'
>>> PIL.__version__
'5.1.0'
>>>
不要将其与Pillow构建的最后一个PIL版本(因而仍在使用)混淆:
>>> PIL.VERSION
'1.1.7'
关于PIL的分支,文档中没有相关信息:https://pillow.readthedocs.io/en/5.1.x/about.html#why-a-fork
但是,PIL的主页 上写道:
状态
目前的免费版本是PIL 1.1.7。此版本支持Python 1.5.2及更高版本,包括2.5和2.6。3.X版本将在以后发布。
该版本发布日期为“2009年11月15日”。
这证实了这只是PIL的最后一个发行版本。
这些源文件定义了版本号字符串:https://github.com/python-pillow/Pillow/blob/master/src/PIL/version.py
和 https://github.com/python-pillow/Pillow/blob/master/src/PIL/__init__.py
, 或者在仓库中搜索所有出现的__version__
。
(在我的Windows上,已安装到%LocalAppData%\Programs\Python\Python36\Lib\site-packages\PIL\version.py
)
https://pillow.readthedocs.io/en/stable/releasenotes/5.2.0.html
5.2.0 API变更和弃用
这些版本常量已被弃用。
VERSION
将在Pillow 6.0.0中删除,PILLOW_VERSION
将在此之后删除。`PIL.VERSION` (old PIL version 1.1.7) `PIL.PILLOW_VERSION` `PIL.Image.VERSION` `PIL.Image.PILLOW_VERSION`
请使用
PIL.__version__
替代。https://pillow.readthedocs.io/en/stable/releasenotes/6.0.0.html
6.0.0向后不兼容变化:版本
VERSION
已被移除,使用__version__
替代。>>> import PIL >>> PIL.__version__ '8.4.0' >>> from PIL import Image >>> Image.__version__ '8.4.0' >>> Image.__version__ is PIL.__version__ True
from PIL import Image
print('PIL',Image.VERSION)
from PIL import Image
dir(Image)
# AH HAH! there is an attribute __version__
print(Image.__version__)
8.0.1
如果你不是导入整个 PIL
库,而是像这样:
from PIL import Image, ImageTk, ImageDraw, ImageFont
那么这个可以工作:
print('Image.VERSION', Image.VERSION)
print('Image.PILLOW_VERSION', Image.PILLOW_VERSION)
结果:
Image.VERSION 1.1.7
Image.PILLOW_VERSION 3.1.2
注意:Ubuntu 16.04.6 LTS使用的是早期版本的Pillow,该版本是在2016年进行测试的。 Canonical(Ubuntu的开发公司)似乎不喜欢在测试之后升级Python版本。