Python PIL-不是有效数量的量化表。应介于2和4之间

Python PIL-不是有效数量的量化表。应介于2和4之间,python,python-imaging-library,Python,Python Imaging Library,我的PIL库在一段时间内运行良好,但现在我到处都会遇到此异常,如何修复此异常 f = "/media/bighdd/1.jpg" from PIL import Image im = Image.open(f) im.thumbnail('50x50') im.save('/media/bighdd/2.jpg') Traceback (most recent call last): File "<stdin>", line 1, in <module> Fil

我的PIL库在一段时间内运行良好,但现在我到处都会遇到此异常,如何修复此异常

f = "/media/bighdd/1.jpg"
from PIL import Image
im = Image.open(f)
im.thumbnail('50x50')
im.save('/media/bighdd/2.jpg')

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/PIL/Image.py", line 1437, in save
    save_handler(self, fp, filename)
  File "/usr/local/lib/python2.7/dist-packages/PIL/JpegImagePlugin.py", line 471, in _save
    ImageFile._save(im, fp, [("jpeg", (0,0)+im.size, 0, rawmode)])
  File "/usr/local/lib/python2.7/dist-packages/PIL/ImageFile.py", line 494, in _save
    for e, b, o, a in tile:
ValueError: Not a valid numbers of quantization tables. Should be between 2 and 4.
f=“/media/bighdd/1.jpg”
从PIL导入图像
im=图像。打开(f)
im.缩略图('50x50')
im.save('/media/bighdd/2.jpg')
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/local/lib/python2.7/dist-packages/PIL/Image.py”,第1437行,保存
保存\u处理程序(self、fp、filename)
文件“/usr/local/lib/python2.7/dist packages/PIL/JpegImagePlugin.py”,第471行,保存
图像文件。_保存(im,fp,[((jpeg),(0,0)+im.size,0,rawmode)])
文件“/usr/local/lib/python2.7/dist packages/PIL/ImageFile.py”,第494行,保存
对于瓷砖中的e、b、o、a:
ValueError:量化表的数目无效。应介于2和4之间。

检查是否以以下方式导入图像:

from PIL import Image
当我的代码中出现错误时,我也遇到了同样的错误

import Image

这一微小的变化让事情进展顺利

你使用的是
virtualenv
?在我的例子中,错误出现在
sorl
库中的
get\u缩略图
方法调用中。因此,我不应该在库中更改代码,这是一种糟糕的做法。我发现
sorl
使用的是安装在我的网络托管提供商系统中的
PIL
库,而不是我的virtualenv中的库。因此,我将我的virtualenv的site packages文件夹(通常以
“/home/user/.virtualenvs/virtualenv name/lib/python2.7/site packages”的形式)添加到
sys.path
的开头,问题就解决了,由于安装在virtualenv中的
PIL
sorl
版本比安装在系统中的版本更新,因此解决了此问题。我希望这是有用的

您应该转到ImageFile.py中的第494行,通过添加自己的日志来确定抛出错误的位置;或者别的什么。这可能是调试大型软件包的一个有趣的练习。。。或者您可以重新下载二进制文件并重新安装。顺便说一句,在我安装的virtualenv中:
sorl缩略图==11.12
PIL==1.1.7
Pillow==2.1.0