K.D.Satoransky 2024-02-27 05:15 采纳率: 66.7%
浏览 244
已结题

pip list列表中有库,但是编译时就显示缺少库

img

我用setup.py文件下载了一个第三方库文件(.egg),pip list列表中显示我成功安装了该库,但是再编译的时候就报错说库不存在。编译环境用的没有问题,和安装库成功的环境相同。

麻烦给解决解决吧,困扰好几天了😶

  • 写回答

22条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-02-27 05:15
    关注
    获得0.45元问题酬金

    引自免费微信小程序:皆我百晓生

    根据您提供的信息,尽管在终端中运行pip list时能够看到cleverhans库已安装,但在实际编译运行代码时仍然出现了ImportError: No module named 'cleverhans'的错误。这种情况可能由以下几个原因导致:

    1. 环境不一致:您提到“编译环境用的没有问题,和安装库成功的环境相同”,但有时即使环境看似相同,也可能存在细微差别,比如激活的Python虚拟环境不同(确认当前Python解释器是否与安装库时的解释器一致)。

      检查方法:

      which python
      # 确认这与您安装 cleverhans 库时使用的 Python 路径一致
      
    2. 库安装位置问题:Python 在导入模块时会按照 sys.path 列表中的路径查找。如果安装的库位于不在该列表中的位置,则会导致找不到模块。

      您可以检查一下 cleverhans 是否真的安装到了当前环境下的 site-packages 目录中,例如:

      (test01)cjk@amax:~$ ls /home/cjk/.conda/envs/test01/lib/python3.5/site-packages | grep cleverhans
      
    3. Python版本不兼容:虽然您安装了支持 Python 3.5 的 cleverhans 版本,但由于 Python 3.5 已经不再维护,并且 pip 提示未来将不再支持此版本,所以有可能是由于 Python 版本过旧导致的问题。建议升级到一个更高、仍受支持的 Python 版本。

    4. 库文件损坏或未正确安装:有时候 .egg 文件或其他类型的安装包可能因为网络传输或其他原因造成安装不完整或文件损坏,尝试卸载后重新安装并确保安装过程无误。

      卸载并重新安装库:

      pip uninstall cleverhans
      pip install cleverhans
      
    5. 激活的 Conda 环境问题:当使用 Conda 创建虚拟环境时,请确保在执行程序时该环境已被激活。请检查命令行提示符以确认是否显示当前活动的环境名 (test01)

    针对上述情况,请逐个排查,尤其是检查环境一致性以及库的实际安装位置。此外,考虑到 TensorFlow 版本为 1.0.0,同时也有不少过时的依赖包,建议更新所有相关库至最新稳定版以确保兼容性。

    评论 编辑记录
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 3月5日
  • 修改了问题 2月27日
  • 创建了问题 2月27日