当前位置: 首页 > 面试题库 >

PIL:ImportError:_imaging扩展名是为枕头或PIL的另一个版本构建的

濮阳景天
2023-03-14
问题内容

我得到错误:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-4-0f6709e38f49> in <module>()
----> 1 from PIL import Image

C:\Anaconda\lib\site-packages\PIL\Image.py in <module>()
     61     from PIL import _imaging as core
     62     if PILLOW_VERSION != getattr(core, 'PILLOW_VERSION', None):
---> 63         raise ImportError("The _imaging extension was built for another "
     64                           " version of Pillow or PIL")
     65

ImportError: The _imaging extension was built for another  version of Pillow or PIL

每当我尝试使用PIL库时。我正在尝试加载和处理一堆.gif文件,而我现在正在尝试的操作如下:

from PIL import Image

通过以下方法尝试不同的方法:

import scipy.ndimage as spnd
os.chdir('C:\\WeatherSink\\data\\')
spnd.imread('2014-11-03-0645.gif')

失败:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-3-23c383b79646> in <module>()
      1 os.chdir('C:\\WeatherSink\\data\\')
----> 2 spnd.imread('2014-11-03-0645.gif')

C:\Anaconda\lib\site-packages\scipy\ndimage\io.pyc in imread(fname, flatten, mode)
     36         from PIL import Image
     37     except ImportError:
---> 38         raise ImportError("Could not import the Python Imaging Library (PIL)"
     39                           " required to load image files.  Please refer to"
     40                           " http://pypi.python.org/pypi/PIL/ for installation"

ImportError: Could not import the Python Imaging Library (PIL) required to load image files.  Please refer to http://pypi.python.org/pypi/PIL/ for installation instructions.

第一种方法指导我安装PIL的版本。我尝试模拟getattr(…),然后返回None。因此,它的功能还不足以令我感到惊讶。但是有人知道如何“修复”错误吗?

我在win7上运行,通过conda管理python2.7。我也尝试删除并重新安装软件包,但输出没有任何变化。

非常感谢帮助。


问题答案:

这只是一个安装问题。

如果尚未安装pip,请先在系统上安装它。它也可用于Windows。

升级您的numpy,pip /枕头,scipy:

pip install -U numpy
pip install -U pil/pillow
pip install -U scipy

Windows的最佳选择是使用anaconda。

我认为在conda中已经安装了pip。这样可以解决您的系统版本问题。

In [1]: from PIL import Image

In [2]: import scipy.ndimage as spnd

In [3]: x = spnd.imread('ppuf100X91.gif')

In [4]: print x
[[255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]
 ..., 
 [255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]]


 类似资料:
  • 问题内容: 用不同的方式提出这个问题,每个正式的Python版本都是从哪个Python官方版本构建的,而Python的python.org是什么版本的?什么版本的MinGW与这些版本的Visual C ++兼容? 这些信息是否可以从某些网站上获得? 问题答案: 每个Python版本的源代码分发中的文件都包含用于制作二进制文件的Visual Studio版本。 Python 2.6、2.7、3.1和

  • 配置文件 才开始,我们先用最快的(不是最标准的)的方式来建立一个代码最少的扩展。在php源码文件夹的ext目录下创建一个新的文件夹,这里我取的名字叫做walu,它往往就是我们扩展的名字。其实这个文件夹可以放在任何一个位置,但是为了我们在后面介绍win32的编译与静态编译,我们还是把它放在php源码的ext目录下。 现在,我们在这个目录下创建一个config.m4文件,并输入以下内容: PHP_AR

  • 在将添加到构建中并从junit4迁移所有内容后,Gradle开始出现以下错误。 在老式运行器中所有运行都很好,但junit5测试不是。 我很好奇我是否可以在项目评估后删除这个配置,因为无论如何都添加了所有JUnit依赖项来编译代码,然后插件只是在顶部添加负载。我创建了一个项目,将所有Junit5库封装在一个人工制品中。 编辑3 我确实设法将所有木星人工制品打包到1中,以稍微缩小cp,但我的类路径仍

  • 问题内容: 我用以下方法安装了软件包: 得到成功消息()。关闭并重新打开终端。 但是当我尝试: 我收到错误消息: ImportError:没有名为枕头的模块 如果再次运行,它说 问题答案: 尝试使用 要么 代替。是,不再保留的Python Imaging Library的分支。但是,为了保持向后兼容性,将使用旧的模块名称。

  • 我想从TER更新一个扩展,使其与TYPO3 v10兼容。可能的解决方案是什么?最佳做法是什么?应保证与旧版本TYPO3的测试和兼容性。

  • 问题内容: 当我在项目中构建Java对象类时,将以.class扩展名创建文件,并且人类不可读;快速构建文件呢? 例: 构建后会是什么? 问题答案: Swift与Java的编译过程有所不同,因此不一定有直接等效的过程。 随着构建的进行,每个Swift文件都将被编译成一个’Object’文件,并以扩展名结尾。然后,一旦它们全部构建,它们就被链接在一起以形成二进制文件。如果取消选择iOS应用程序的IPA