【问题标题】:"ImportError: No module named cv2" when running Django project from PyCharm IDE从 PyCharm IDE 运行 Django 项目时出现“ImportError:没有名为 cv2 的模块”
【发布时间】:2012-06-14 19:32:41
【问题描述】:

我正在从 PyCharm 运行一个 Django 项目,其配置设置为使用依赖于 opencv 的 virtualenv 中的 Python 解释器。当我运行 django-admin.py runserver 时,该站点在本地运行良好,但是当我尝试直接从 PyCharm IDE 运行项目时,我不断收到“ImportError: No module named cv2”错误。

还有其他人对 PyCharm 和 opencv 有过这个问题吗?

【问题讨论】:

  • 我没有使用 PyCharm,但如果你有相同的 sys.path 设置,那么应该没有区别。您可以尝试在django-admin.py runserver 中使用print cv2.__file__,并且可以验证它是否在您的PyCharm IDE 中的print sys.path 上。您很可能可以在 IDE 中设置 PYTHONPATH。
  • 从 python 的命令行我得到了/usr/local/lib/python2.7/site-packages/cv2.socv2.__file__。我试过export PYTHONPATH=/usr/local/lib/python2.7/site-packages/cv2.so:$PYTHONPATH 没有运气。我还尝试将最后一个导出命令添加为 PyCharm 配置中的环境变量之一,也出现相同的错误。
  • 尝试将您的路径设置为仅站点包。在路径中包含 cv2.so 不会给你你想要的,因为它不是一个目录
  • fyi,我在 virtualenvs 中使用 opencv 时遇到了类似的问题,here 给出的答案帮助了我。

标签: python django opencv pycharm


【解决方案1】:

最后我不得不直接在 Pycharm Edit Configurations -> Run/Debug Configurations -> Environment Variables 面板中设置环境变量。点击编辑按钮后,我添加了以下选项:将名称设置为PYTHONPATH,将值设置为/usr/local/lib/python2.7/site-packages:$PYTHONPATH,编辑后应在输入框中显示为PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH。此外,我确保退出并重新登录 osx,这也解决了其他几个与路径相关的问题。

【讨论】:

  • 正是我想要的!在 Windows 机器上使用 VirtualEnv,出于某种原因,Pycharm 没有找到我的 matplotlib 包来启用它的自动完成功能,但它运行 matplotlib 导入就好了。将 PythonPath 添加到我的虚拟环境站点包中(最后没有包含 $PYTHONPATH 位),现在它可以完美运行
  • 上帝保佑你这个有用的答案:)
【解决方案2】:

我不太确定这是否适合你们,但它适合我。就我而言,在我看来,我安装 OpenCV 是为了与 OS X 附带的默认 Python 一起工作。我记得我也尝试在我的 Mac 中安装 Python 2.7.5 和 Python 3,当我选择我的 Python 时我看到了它们Pycharm 的解释器。而且他们都没有让我导入模块 cv2。所以我改成默认的Python2.7.2(/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python)。然后,在 File/DefaultSettings/Project Interpreter/Python Interpreter 中,单击已添加的 Python 解释器(Python 2.7.2),单击 Paths 并定位到“/usr/local/bin/python2.7/site-packages”并添加它。单击蓝色刷新按钮,应用并确定。然后它可以使用导入和自动完成。

问候,

【讨论】:

  • 对我来说,我必须在 PyCharm Preferences 而不是 File/DefaultSettings 中设置解释器
猜你喜欢
  • 2014-11-28
  • 2021-07-07
  • 2015-05-20
  • 1970-01-01
  • 1970-01-01
  • 2018-01-20
  • 1970-01-01
  • 2013-12-16
相关资源
最近更新 更多