我正在使用Mac OS x 10.10.3 Yosemite和Python 2.7.9 | Anaconda 2.2.0(x86_64)来处理很多python的东西。我正在使用eclipse和谷歌应用引擎。
我已经没有堆栈溢出帖子来读取很多人都有的错误,然后通过某种方式解决这个问题对我不起作用。
我收到了这个错误:
导入图片 ImportError:没有名为Image
的模块从此代码:
try:
from PIL import Image
except:
import Image
在我尝试了以下内容之后:
conda install pillow
sudo pip install pillow
pip install pillow
pip install pil
某些堆栈溢出帖子建议查看该路径是否适用于其他用户,所以我在终端中尝试了这个:
python
Python 2.7.9 |Anaconda 2.2.0 (x86_64)| (default, Dec 15 2014, 10:37:34)
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://binstar.org
>>> import sys
>>> print(sys.path)
并得到:
['',
'/Users/jrussek/anaconda/lib/python27.zip',
'/Users/jrussek/anaconda/lib/python2.7',
'/Users/jrussek/anaconda/lib/python2.7/plat-darwin',
'/Users/jrussek/anaconda/lib/python2.7/plat-mac',
'/Users/jrussek/anaconda/lib/python2.7/plat-mac/lib-scriptpackages',
'/Users/jrussek/anaconda/lib/python2.7/lib-tk',
'/Users/jrussek/anaconda/lib/python2.7/lib-old',
'/Users/jrussek/anaconda/lib/python2.7/lib-dynload',
'/Users/jrussek/anaconda/lib/python2.7/site-packages',
'/Users/jrussek/anaconda/lib/python2.7/site-packages/Sphinx-1.2.3 py2.7.egg',
'/Users/jrussek/anaconda/lib/python2.7/site-packages/aeosa',
'/Users/jrussek/anaconda/lib/python2.7/site-packages/cryptography-0.8-py2.7-macosx-10.5-x86_64.egg',
'/Users/jrussek/anaconda/lib/python2.7/site-packages/setuptools-14.3-py2.7.egg']
我认为这不在我的路上所以我试图追加这个东西:
PYTHONPATH=/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL
看起来不像是出现了。
所以我尝试以10种不同的方式卸载和重新安装。我只是为了枕头,而不是PIL那样做,因为我为PIL尝试了不同的东西,看了很多帖子说使用枕头,而不是PIL,因为PIL已被弃用。
无论如何,对于枕头我一直得到:
Requirement already up-to-date: pillow in ./anaconda/lib/python2.7/site-packages
显然枕头已安装在anaconda中,但这无助于我一直得到的导入错误。
然后我尝试了conda安装枕头,
它升级了一些东西:
但是..我尝试再次运行我的代码,无论我尝试使用哪种导入语句,我仍然没有找到任何模块。
连连呢?请?任何人吗?
答案 0 :(得分:10)
以下内容对我有用:
from PIL import Image
这不起作用:
import Image
枕套
$ conda search pillow
Fetching package metadata: ....
pillow 2.1.0 py33_0 defaults
2.1.0 py27_0 defaults
2.1.0 py26_0 defaults
2.3.1 py34_0 defaults
2.3.1 py33_0 defaults
2.3.1 py27_0 defaults
2.3.1 py26_0 defaults
2.4.0 py34_0 defaults
2.4.0 py33_0 defaults
2.4.0 py27_0 defaults
2.4.0 py26_0 defaults
. 2.5.1 py34_0 defaults
2.5.1 py33_0 defaults
2.5.1 py27_0 defaults
2.5.1 py26_0 defaults
2.7.0 py34_0 defaults
2.7.0 py33_0 defaults
2.7.0 py27_0 defaults
2.7.0 py26_0 defaults
2.7.0 py34_1 defaults
2.7.0 py33_1 defaults
2.7.0 py27_1 defaults
2.7.0 py26_1 defaults
2.8.1 py34_1 defaults
2.8.1 py33_1 defaults
2.8.1 py27_1 defaults
2.8.1 py26_1 defaults
2.8.1 py34_2 defaults
2.8.1 py33_2 defaults
2.8.1 py27_2 defaults
2.8.1 py26_2 defaults
2.8.2 py34_0 defaults
2.8.2 py33_0 defaults
2.8.2 py27_0 defaults
2.8.2 py26_0 defaults
* 2.9.0 py34_0 defaults
2.9.0 py33_0 defaults
2.9.0 py27_0 defaults
2.9.0 py26_0 defaults
Python路径
$ python
Python 3.4.3 |Anaconda 2.1.0 (x86_64)| (default, Mar 6 2015, 12:07:41)
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print (sys.path)
['', '/Users/erwin/anaconda/lib/python34.zip', '/Users/erwin/anaconda/lib/python3.4', '/Users/erwin/anaconda/lib/python3.4/plat-darwin', '/Users/erwin/anaconda/lib/python3.4/lib-dynload', '/Users/erwin/anaconda/lib/python3.4/site-packages', '/Users/erwin/anaconda/lib/python3.4/site-packages/Sphinx-1.3.1-py3.4.egg', '/Users/erwin/anaconda/lib/python3.4/site-packages/setuptools-18.1-py3.4.egg']
图片使用
现在我的终端和Eclipse PyDev都可以使用。
>>> from PIL import Image
>>> a = Image.new("RGB", (512,512), "red")
>>> a.show()
答案 1 :(得分:5)
首先,尝试使用(大写字母P)安装枕头
pip install Pillow
然后使用
来自PIL导入图片
“Pillow是PIL的一个分支,即Python成像库,它不再被维护。但是,为了保持向后兼容性,使用了旧的模块名称。”来自:pillow installed, but "no module named pillow" - python2.7 - Windows 7 - python -m install pillow
答案 2 :(得分:4)
更新版的枕头已经改变了#34;图像"为:
from PIL.Image import core as image
答案 3 :(得分:0)
我至少和你一样处于同样的位置,而且我设法通过其他解决方案解决了这个问题。然后又破了。以下是我所做的修复它:
打开两个取景器窗口。
在其中一个中,导航至:
//anaconda/pkgs/pillow-3.2.0-py27_0/lib/python2.7/site-packages
在此文件夹中,您将找到文件夹
PIL
复制此文件夹并将其粘贴到可访问的位置。
现在打开anaconda目录中的python 2.7环境文件夹。对我来说,它是:
//anaconda/envs/py27/lib/python2.7/site-packages
您只需要更改" py27"在那。
即使已经有一个名为" PIL"的文件夹,也可以将复制的PIL放在新的site-packages文件夹中。据我所知,现有的PIL文件夹中存在旧的或错误的东西。或枕头没有正确安装。我认为这相当于手动安装python模块。超级好玩。
答案 4 :(得分:0)
我遇到了与OP相同的问题:
问题最终成为我试图运行的 .py 文件。
在脚本的顶部有一个shebang:#!/usr/bin/python
然而,我的默认python不会从系统安装运行。我使用homebrew
来升级python,所以我的默认路径是:
$ which python
/usr/local/bin/python
我将顶部的shebang更改为#!/usr/local/bin/python
,然后我就可以运行我的脚本(调用from PIL import Image
)。