python-3.x - ImportError:PIL/pillow 的库版本不兼容
问题描述
我最近安装了shap
,它需要pillow>=4.3.0
:
$ pip3 install shap
Installing collected packages: shap, pillow
Successfully installed pillow-6.0.0 shap-0.29.2
运行我的脚本shap
,我得到:
Traceback (most recent call last):
File "Runner.py", line 132, in <module>
import shap
File "/usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/shap/__init__.py", line 11, in <module>
from .plots.summary import summary_plot
File "/usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/shap/plots/summary.py", line 15, in <module>
from . import colors
File "/usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/shap/plots/colors.py", line 7, in <module>
import skimage.color
File "/Users/bravina/Library/Python/3.6/lib/python/site-packages/skimage/__init__.py", line 135, in <module>
from .data import data_dir
File "/Users/bravina/Library/Python/3.6/lib/python/site-packages/skimage/data/__init__.py", line 13, in <module>
from ..io import imread, use_plugin
File "/Users/bravina/Library/Python/3.6/lib/python/site-packages/skimage/io/__init__.py", line 7, in <module>
from .manage_plugins import *
File "/Users/bravina/Library/Python/3.6/lib/python/site-packages/skimage/io/manage_plugins.py", line 24, in <module>
from .collection import imread_collection_wrapper
File "/Users/bravina/Library/Python/3.6/lib/python/site-packages/skimage/io/collection.py", line 10, in <module>
from PIL import Image
File "/usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/Image.py", line 93, in <module>
from . import _imaging as core
ImportError: dlopen(/usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/_imaging.cpython-36m-darwin.so, 2): Library not loaded: @loader_path/.dylibs/libtiff.5.dylib
Referenced from: /usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/_imaging.cpython-36m-darwin.so
Reason: Incompatible library version: _imaging.cpython-36m-darwin.so requires version 10.0.0 or later, but libtiff.5.dylib provides version 8.0.0
如果我直接尝试,同样的事情python3
:
Python 3.6.4 (default, Jan 4 2018, 14:56:03)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from PIL import Image
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/Image.py", line 93, in <module>
from . import _imaging as core
ImportError: dlopen(/usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/_imaging.cpython-36m-darwin.so, 2): Library not loaded: @loader_path/.dylibs/libtiff.5.dylib
Referenced from: /usr/local/Cellar/python3/3.6.4_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/_imaging.cpython-36m-darwin.so
Reason: Incompatible library version: _imaging.cpython-36m-darwin.so requires version 10.0.0 or later, but libtiff.5.dylib provides version 8.0.0
有关如何解决此问题的任何提示?
解决方案
好吧,这篇相关帖子中建议的答案都没有对我有用,所以我最终完全清理并重新安装了 python3。virtualenv
从那里,尽可能干净地安装必要的软件包似乎可以解决问题......
推荐阅读
- python - 将列类型从对象更改为浮点但得到 TypeError
- python - 如何在bluehost的cpanel上设置python应用程序图标
- kubernetes - Kubernetes - 将 APOC 库安装到 Neo4j
- javascript - React 测试库:如何在 setInterval 更新的文档中查找文本?
- c - 遇到 malloc 调用时,使用 gdb 的行为很奇怪
- java - Spring JMS 生产者和消费者中的相同 ThreadLocal
- javascript - 空手道框架:将从 csv 读取的值作为参数传递给 javaprogram
- python - collection Counter - 如何消除单词中的计数字符“'”
- azure - Terraform:使用列表创建命名空间和角色绑定
- django - 如何禁用 Django 缓存?