(已解决)Ubuntu下Anaconda已经安装opencv但是进入环境import cv2失败

Ubuntu下Anaconda已经安装opencv,但是进入环境import cv2失败

这个问题折腾了我很久!,很久!

问题描述:

  • ModuleNotFoundError: No module named 'cv2'
  • 在Anaconda下,进入python(3.8.8),能够导入所有已经安装的包。但是在虚拟环境中,不管设定的是python版本多少(如3.6),查看python都是对的(3.6),但是进入python却总是显示在python3.8.8,并且不管怎么import任何包都显示没有,install安装又显示已经存在。

问题原因:

  • 这是因为python环境路径选择导致的问题。Anaconda在安装的时候,自动刷新了环境,使用了优先级更高的外部路径,所以自动去base下找python。

问题解决:

  • 去./bashrc文件下,找到最后一行export PATH="~/anaconda3/bin:$PATH",对其进行注释。注释完之后你就会发现你的虚拟环境恢复正常了。

PS:对Anaconda、pip换源,能够大大节省你的时间。

问题描述:

  • 无法加载Cuda动态库11.0
  • Could not load dynamic library ‘libcudart.so.11.0’;
  • dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory;

问题原因:

  • 你的Cuda库没有装,或者tensorflow需要11.0的动态库,但是你的电脑只有10.0的动态库。

问题解决:

  • 直接在创建虚拟环境的时候,在命令条后面加上tensorflow-gpu,可以自动安装适配的tensorflow,避免之后出现无法加载动态库的问题。我就是先创了环境,然后pip安装tensorflow,结果最新版需要libcudart.so.11.0,下载又很麻烦。然后就直接创建环境的时候添加tensorflow-gpu,自动为你下载适配环境的tensorflow。

问题描述:

  • Ubuntu的python安装软件路径突然从‘/usr/local/lib/python3.8/dist-packages’,变成了‘/home/xxx/.local/lib/python3.8/site-packages’下了
  • Defaulting to user installation because normal site-packages is not writeable;

问题原因:

  • 应该是因为今天下午用了xshell去远程连接ubutnu,因为进入./local/lib里面查看,多了两个文件夹,一个python2.7,一个python3.8,都是今天下午创建的文件夹,其中3.8还存放了下午下载的一个软件。

问题解决:

  • 使用python -m site去查看,发现USER_BASEUSER_SITE路径都发生了改变。没办法只能通过pip show numpy(一个之前下载过的软件),看看之前装在哪了,然后sudo gedit /usr/lib/python3.8/site.py里面,在代码最上几行手动改过来,改成USER_BASE = ‘/usr/local’,和USER_SITE = ‘/usr/local/lib/python3.8/dist-packages'(查询到的)。

你可能感兴趣的:(深度学习,tensorflow,深度学习,python)