我知道PIL已被弃用,所以我安装了Pillow,为了向后兼容,Pillow仍然使用PIL作为其模块名称。 这是我的 pip freeze 看起来像Pillow: 的 枕= 3.2.0
以下是我在代码中使用它的方式:
import PIL as pillow
from PIL import Image
正如有人在类似的帖子中建议的那样,我也尝试了
import PIL
from PIL import Image
两者都不起作用。 两个都给我这个错误:
ImportError: No module named PIL
另外,我试过了:
import Image
它给了我:
ImportError: No module named Image
非常感谢帮助!
答案 0 :(得分:20)
就我而言,在Windows上,我需要做的就是运行:
pip install pillow
答案 1 :(得分:11)
根据我的评论,因为它帮助你解决了你的问题:
你看到的问题是你有pip版本1.5.6,而pip的版本决定了如何解压缩包,这最终决定了模块是否正确加载。
所需要的只是:
pip install --upgrade pip
允许pip自我升级。
如果您使用的是Mac / Linux,请使用sudo
,否则您可能需要以管理员身份运行'在Windows上。
瞧,您现在可以正确导入PIL模块:
Python 2.7.12 (default, Jun 29 2016, 13:16:51)
[GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.31)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import PIL
>>> from PIL import Image
>>> Image
<module 'PIL.Image' from '/usr/local/lib/python2.7/site-packages/PIL/Image.pyc'>
答案 2 :(得分:6)
您可以使用python -m pip install Pillow
或pip install Pillow
答案 3 :(得分:0)
我最近也遇到了麻烦,所以让我分享一下我的看法。我在Mac OS X Mojave 10.14上。我尝试盲目地运行pip install pillow
多次,而没有发现对python
在何处搜索其软件包的深入了解。
从OS X High Sierra升级到Mojave时遇到此错误。我以前工作的Scrapy项目刚刚停止正常运行。
请注意,我没有使用virtualenv
。
首先,您需要检查系统使用了哪个python。在终端中,运行
which -a python
您将获得类似的内容:
nicholass-mbp:~ nicholaslie$ which -a python
/usr/local/bin/python
/usr/local/bin/python
/usr/bin/python
这导致我在/usr/local/
文件夹中进行搜索。原来有一个文件夹,我的python
在其中搜索其软件包,该文件夹位于/usr/local/lib/python2.7
(python
)或/usr/local/lib/python3.7
(python3
)
我目前的pip install pillow
所做的是将PIL
软件包安装在/usr/local/lib/python2.7/site-packages
目录中,但没有安装到/usr/local/lib/python3.7/site-packages
但是,由于我的项目使用的是Python 3,因此No module named PIL
错误仅告诉您正在使用的python3
实例找不到PIL
库。
我使用Homebrew来管理我的系统软件包,例如node
,python
等。因此,我要做的就是使用以下方式通过Homebrew重新安装python3
:
brew reinstall python
,然后运行pip3 install pillow
。
只要确保PIL
软件包已正确安装在/usr/local/lib/python3.7/site-packages
中,您就可以顺利进行了。希望这对某人有帮助。
答案 4 :(得分:0)
OSX
sudo easy_install pip
pip install Pillow --user
答案 5 :(得分:0)
对我来说,当我尝试在PyCharm中使用PIL时,最初的Project Interpreter并没有寻找Python 3.7的正确位置。此问题已得到纠正,现在可以使用PIL(已在图像中显示纠正的口译员)。
答案 6 :(得分:0)