我在一个虚拟环境中安装了Pillow和qrcode模块。
在python shell中,我可以使用PIL以编程方式创建一个测试映像:
>>> from PIL import Image
>>> img = Image.new('1', (200, 200))
>>> img.save('test-image.jpeg', 'JPEG')很好,这就像我所期望的那样。然而,当我尝试使用依赖于PIL的模块时,我得到了这个错误:
>>> import qrcode
>>> qr_code = qrcode.make("1")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/vagrant/.virtualenvs/env1/local/lib/python2.7/site-packages/qrcode/main.py", line 8, in make
return qr.make_image()
File "/home/vagrant/.virtualenvs/env1/local/lib/python2.7/site-packages/qrcode/main.py", line 186, in make_image
from qrcode.image.pil import PilImage
File "/home/vagrant/.virtualenvs/env1/local/lib/python2.7/site-packages/qrcode/image/pil.py", line 5, in <module>
import Image
ImportError: No module named Image为什么qrcode不能导入PIL的Image类,但它可以从shell中工作?
发布于 2013-10-02 05:36:47
这是您的安装的一个问题: python模块已作为PIL模块的子包安装,而您正在使用的库希望Image模块直接位于python路径中。最简单的解决方案是替换:
import Image通过以下方式:
from PIL import Image在文件qrcode/image/pil.py中。
https://stackoverflow.com/questions/19126305
复制相似问题