2012-01-14 119 views
88

我在shell中使用这个命令来安装PIL:导入错误:没有模块名为PIL

easy_install PIL 

然后我跑python和输入:import PIL。但我得到这个错误:

Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
ImportError: No module named PIL 

我从来没有这样的问题,你怎么看?

+3

'导入图像'的工作? – 2012-01-14 17:32:13

+0

是的,它工作。你的建议是什么? – 2012-01-14 17:35:37

+0

但是,我在这里找到了任何东西! – 2012-01-14 17:55:35

回答

64

你必须做

import Image 

,而不是import PIL(PIL其实不是进口这种方式)。由于import Image适合你,这意味着你已经安装了PIL。

为库和Python模块命名不同,但这是为PIL选择的。

您可以从official tutorial获得有关如何使用此模块的更多信息。

PS:在一些安装,import PIL确实工作,这增加了混乱。这被example from the documentation证实,正如@JanneKarila发现的那样,还有一些更新版本的MacPorts PIL包(1.1.7)。

+42

从志明的答案'pip安装映像'为我工作。 – 2015-10-14 22:42:57

+5

是,@JimSchubert说的。 '@ zhimmingwang'的'pip install image'也适用于我 – 2015-11-04 14:04:36

+0

但是'image'不是PIL(就像在问题中那样),它是一个不同的模块。参考:https://github.com/francescortiz/image。我错过了什么,在这里? – EOL 2017-01-21 18:31:56

-11

你可能错过了构建pil的python头文件。如果你正在使用Ubuntu或喜欢它会像

apt-get install python-dev 
+1

我使用的是Windows 7. – 2012-01-14 17:37:03

+0

如果你使用64位体系结构,那么你在使用什么体系结构来创建一个受到伤害的世界。使用32位版本,并使用[这里]的非官方预编译版本(http://mail.python.org/pipermail/image-sig/2009-September/005872.html) – Crankyadmin 2012-01-14 17:47:29

+0

它是32位,我已经安装了这个几次,但这次我有这个问题 – 2012-01-14 17:53:21

15

有时我得到这种类型的错误运行Python中的Unitest。解决方案是卸载并在虚拟环境中安装相同的软件包。

使用这个命令:

pip uninstall PIL 

pip install PIL 

如果由于某种原因,你得到一个错误,在命令前加上sudo然后按下回车键输入密码后。

+0

谢谢,这对我有用。不知道为什么它被拒绝。 – Fiver 2013-05-01 14:44:20

+2

这也适用于我。考虑到可以使用间接使用PIL的其他Python脚本,更改Import语句并不总是一种选择。 – PropellerHead 2013-07-25 22:28:19

+0

这不适合我,它找不到一个名为PIL(或pil)的存储库。然而,我运行了“pip安装枕头”,它确实有效。我的理解是Pillow是PIL的一个分支。 – 2014-10-30 16:54:13

3

在窗口上,尝试检查PIL库位置的路径。在我的系统,我注意到重命名pil文件夹PIL之后的路径是

\Python26\Lib\site-packages\pil instead of \Python26\Lib\site-packages\PIL 

,我能够加载PIL模块。

+0

我也得到相同的导入错误。我已经使用easy_install安装了PIL。在站点包中,它以“PIL-1.1.7-py2.7-win32.egg”名称安装在目录中。根据你的建议,我已将目录名称更改为PIL,并且工作正常。感谢您的帮助@Komla。 – shashaDenovo 2014-02-25 05:42:54

35

在另一个说明中,我强烈建议使用Pillow,它与PIL向后兼容,并且更好地维护/可用于较新的系统。

如果已安装,你可以做

import PIL 

from PIL import Image 

等。

+0

谢谢你非常珍贵 – 2014-10-16 11:13:53

+1

这应该是正确的答案! – Raptor 2016-03-23 07:38:01

+0

其他答案都没有解决我遇到的问题,但是这个问题确实存在。 – MaxJ 2017-12-07 13:49:30

88

在外壳中,运行:

pip install Pillow 
+6

真的吗?'image'不是问题的PIL模块,而是一个“Django应用程序”(恰好是PIL上的_based_)。参考:https://github.com/francescortiz/image。 – EOL 2017-01-21 18:30:59

+6

为什么这有upvotes? 'image'可能是一个有用的库,但它与这个问题无关。 – gwg 2017-03-21 15:00:02

0

我有同样的问题同时导入PIL并进一步导入I mageTk和图像模块。我也尝试通过pip直接安装PIL。但不能取得成功。在两者之间有人提出,PIL已经被直流电,因此,试图通过点安装枕头。枕头已成功安装,此外,PIL软件包的路径为:python27/Lib/site-packages /。

现在Image和ImageTk都可以导入。

0

我最近安装了Leap。我试过了openshot,但没有启动。所以来到这里,发现了一个建议,从码头开始,看看是否有任何错误。

我的错误是error missing mlt。所以我安装了Yast的python-mlt模块,并导入它,试图启动,但接下来的打印说missing pil.

我跟随枕头的建议安装,因为Yast找不到任何pil和导入pil。这没问题,但没有开始,并显示Error missing goocanvas

我用Yast安装了goocanvas,把它导入python中,并且Openshot启动了!

在终端有很多错误,如missing Vimeoclient和很多attributeerrors。那么,看看它是否有任何影响力。

12

这为我工作在Ubuntu 16.04:

sudo apt-get install python-imaging 

我搜索后发现此上Wikibooks大约半小时。

+1

这个问题在Ubuntu 16.04之前被问过,但我在Ubunt 16.04中遇到了这个问题并且用你的建议修复了它。 – foool 2017-01-13 03:21:14

+0

很高兴能帮到你! :d – grooveplex 2017-01-13 11:00:07

1

您将需要安装图像和枕头与您的python包。请放心,命令行将照顾你的一切。

命中

蟒蛇-m PIP安装图像

1

您必须安装图像和枕头用你的Python包。

python -m pip install image 

或运行命令提示符(在Windows),然后导航到脚本文件夹

cd C:\Python27\Scripts 

然后运行以下命令

pip install image 
0

如果使用水蟒:

conda install pillow 
相关问题