Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python程序赢得';t访问站点包_Python_Ubuntu_Site Packages - Fatal编程技术网

Python程序赢得';t访问站点包

Python程序赢得';t访问站点包,python,ubuntu,site-packages,Python,Ubuntu,Site Packages,我是python和UbuntuNoob,每次我编写程序时,都会出现如下错误 Traceback (most recent call last): File "demo.py", line 2, in <module> import cv2 ModuleNotFoundError: No module named 'cv2' 回溯(最近一次呼叫最后一次): 文件“demo.py”,第2行,在 进口cv2 ModuleNotFoundError:没有名为“cv2”的

我是python和UbuntuNoob,每次我编写程序时,都会出现如下错误

    Traceback (most recent call last):
  File "demo.py", line 2, in <module>
    import cv2
ModuleNotFoundError: No module named 'cv2'
回溯(最近一次呼叫最后一次):
文件“demo.py”,第2行,在
进口cv2
ModuleNotFoundError:没有名为“cv2”的模块
我已经安装了opencv,它存在于python目录下的sitepackages目录中,如果我转到该目录,我就可以使用它。
如何使我可以在我的主目录中运行程序而不出现模块未找到错误?

您需要将此模块目录添加到$PYTHONPATH。见下文:

import sys
sys.path.insert(0, "/home/myname/PythonModules")
您还可以通过键入以下命令来检查PYTHONPATH中安装了哪些模块:

import sys
print(sys.path)

很难知道这么多的信息是怎么回事。听起来python解释器由于某种原因找不到模块。我的第一个猜测是,您使用的python版本与安装了opencv的python版本不同。使用您正在运行的命令(例如python或python3)运行
python-V
,并将该版本与站点软件包目录路径中的版本进行比较。您使用的是什么ide/文本编辑器?与@CollinR建议的安装包的位置相比,您几乎肯定使用了不同版本的python。你能提供
哪个pip
哪个python
的输出吗@CollinR和sytech我认为你是对的
~$which pip
输出
/home/adam/miniconda3/bin/pip
~$which python
输出
/home/adam/miniconda3/bin/python
站点包位于
/usr/local/lib/python3.6
如何更改路径?这取决于您想做什么。基本上,由于您使用的Python安装在
/home/adam/miniconda3/bin/Python
下,而不是使用位于
/usr/local/lib/python3.6
的系统安装,因此您需要确保opencv包安装在相应目录中的miniconda路径下。我不熟悉conda/miniconda,但是应该有一些类似于站点包的目录。假设,如果您使用pip,它会将其安装在适当的位置,但您可能必须提供特定的路径。这可能有助于调试,但如果模块安装在站点包中,则不需要将其添加到PYTHONPATH.com。这也是一个起点。我认为用户是noob(如上所述)。我怀疑这些软件包没有正确安装。