Python:ImportError:无法导入名称X.

时间:2014-05-10 03:54:35

标签: python ipython-notebook

我正在使用IPython笔记本电脑。我在Stackoverflow上看到了许多类似的错误,因为我的错误,但我无法看到适用于我的特定问题的解决方案。我尝试使用Image模块将彩色图像转换为灰度图像。但是我收到以下错误。

import Image
from bisect import bisect
import random

im = Image.open('Lenna.png')

aspect = im.size[0] / float(im.size[1])
height = 128
im=im.resize((int(height*aspect), height), Image.ANTIALIAS)
im=im.convert("L") # convert to mono
im.size

ImportError                               Traceback (most recent call last)
<ipython-input-1-2027dc6c0b02> in <module>()
----> 1 import Image
      2 from bisect import bisect
      3 import random
      4 
      5 im = Image.open('Lenna.png')

C:\Users\Tracking\Anaconda\lib\site-packages\PIL\Image.py in <module>()
     27 from __future__ import print_function
     28 
---> 29 from PIL import VERSION, PILLOW_VERSION, _plugins
     30 
     31 import warnings

ImportError: cannot import name VERSION

1 个答案:

答案 0 :(得分:1)

我不知道在发布这篇文章时是否属实,但是现在如果安装原始PIL库而不是pillow library,则可以重现所提到的错误(我发现这篇帖子是因为尝试安装Orange)时遇到了同样的错误。

为了解决这个问题,我删除了原文:

pip uninstall PIL

然后安装枕头:

pip install pillow

我还在ubuntu中安装了所有依赖项(因为我使用的是virtualenv):

apt-get build-dep python-pillow

对于橙色,我必须重新运行build_ext命令:

python setup.py build_ext -f

然后测试通过了:

xvfb-run python setup.py test

(我使用xvfb-run因为我在ssh上运行它。)