导入包不会 return 错误,但不起作用

Import a package doesn't return error, but doesn't work

我使用 pip 安装了 SHAP 包。当我使用 pip freeze 时,我得到:

...

    shap==0.40.0

...

我正在使用 import shap

导入包

当我检查 return shap 的内容时,我得到:

如果像这样调用 SHAP 属性:shap_explainer = shap.TreeExplainer(clf),我得到错误:AttributeError: module 'shap' has no attribute 'TreeExplainer'

您的 python 脚本文件名为 shap.py。您所做的实际上是导入您自己的脚本而不是 shap 模块。 Python first looks in the script directory for imports,既然找到了,它就会停止搜索,因此永远找不到您需要的 shap 模块。将您的脚本重命名为不同的名称,它应该可以工作。