问题:
首先需要明白的是anaconda虽然自带了python,但安装anaconda后并不会覆盖掉你原来的python(pip也是一样的),但安装anaconda后它会把自己的bin目录(里面有python、pip、conda等命令)加到PATH上,而且一般会放到最前面,所以下次你使用python命令时它会根据PATH上的顺序来找python,如果conda的在前面,它就会直接调用conda自带的了。ubuntu在安装完anaconda后,由于在~/.bashrc添加了anaconda的环境变量,一般该环境变量比较靠前,则默认使用的python环境会变为anaconda中的python环境。有时需要使用ubuntu自带的python环境,否则就会报错,比如编译一些包时,需要使用某个python环境下装的工具,这时需要切换到该python环境下。

这里提供关于ubuntu下python环境的一些知识。

在终端通过python --version查看默认python版本,若安装了anaconda,则有可能默认的是anaconda下的python环境,需要看清。

python --version     #查看系统默认python版本
python2 --version   #查看python2具体版本
python3 --version   #查看python3具体版本

查看ubuntu自带python环境版本:

ls /usr/bin/python*

一、ubuntu的python可分为三大类:

1. ubuntu自带的python环境

一般安装在/usr/bin/中,python2和python3可以共存。

ls /usr/bin/python*  #查看ubuntu自带环境版本

1.1 ubuntu中自带python版本管理
可以通过update-alternatives管理linux系统中软件版本的切换

update-alternatives --list python    #查看可替换的python版本

如果出现update-alternatives: error: no alternatives for python的错误提示,说明python的可替换版本还未加入update-alternatives的列表中,此时将步骤二查看到的python版本添加进去

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 2

此时再执行update-alternatives --list python就可以看到python的可替换版本

在终端中执行如下命令以切换pyhton版本

sudo update-alternatives --config python


可以看到此时系统默认的python版本已经被自动设置为3.8,如果要切换回2.7的版本只需要在此窗口输入2.7对应的编号即可设置,回车保持当前设置,再查看默认python版本。

此时python版本已经设置为3.8,符合xxx的编译要求,再次编译可以正常通过。

2. anaconda自带的base环境

3. 在anaconda中创建的虚拟python环境

二、如何切换anaconda和ubuntu默认python环境
解决问题的方针就是让Anaconda在环境变量中的位置比usr/bin/靠后或者直接暂时删掉anaconda的环境变量。输入命令:

echo $PATH

此时会打印出若干路径,例如:

/home/xxx/anaconda3/bin:/usr/xxx/bin:/usr/xxx/local/bin

2.1 临时设置环境变量PATH(临时有效)
此时就需要暂时去除PATH中的anaconda环境,输入命令: PATH=/usr/xxx/bin:/usr/xxx/local/bin
再次查看PATH,输入:echo $PATH

/usr/xxx/bin:/usr/xxx/local/bin

此时,在此Terminal中PATH暂时去除了Anaconda环境路径,运行程序则可以解决冲突,关闭Terminal后并不影响系统的环境变量。

2.2 直接修改系统环境变量(永久有效)
修改~/.bashrc文件

sudo gedit ~/.bashrc

注释掉anaconda的环境变量,保存
关闭当前终端窗口,重新开一个终端,然后source ~/.bashrc
立即生效且对当前用户永久有效,echo $PATH 进行查看是否成功。

在自带python环境中安装包:
安装pip sudo apt-get install python-pip
sudo /usr/bin/pip install **

ubuntu下系统python与anaconda下python相关推荐

  1. python或anaconda下安装opencv提示Error:No matching distribution found for opencv

    python或anaconda下安装opencv提示Error:No matching distribution found for opencv 错误提示: ERROR: Could not fin ...

  2. [Python+Anaconda] 查看Python、Anaconda下python、CUDA、函数库的版本

    查看Python.Anaconda下Python.CUDA.函数库的版本 前言 第三方库(比如Pytorch)要依赖Python版本,CUDA版本,对于不同的版本组合,会有不同的安装命令. 这就要求我 ...

  3. Ubuntu14.04下切换系统自带的Python和Anaconda 下的Python

    写在前面的话 哎,╮(╯▽╰)╭,CSDN的用户体验真的是越来越差了,一点开全部都是广告,然后关不掉,每次关一个广告的话还会一直弹框,要不要开VIP,帮你免费取消广告.seriously?? 这是逗我 ...

  4. 【python】anaconda 管理 python 环境

    anaconda 管理虚拟环境 anaconda 简介 python 虚拟环境的安装 查看当前 anaconda中所有的虚拟环境 创建新的虚拟环境 激活所创建的虚拟环境 删除指定的虚拟环境 退出当前虚 ...

  5. ExpRe[3] python[0] Anaconda配置python环境

    文章目录 Anaconda 安装和初始配置 创建环境 VSCode中使用 总结与问答练习 时效性 本篇撰写时间为2021.11.13,由于计算机技术日新月异,博客中所有内容都有时效和版本限制,具体做法 ...

  6. anaconda3配置python2.7环境_Anaconda3+python3环境下如何创建python2环境(win+Linux下适用,同一个anaconda下py2/3共存)...

    本人之前已经在anaconda环境下已经安装了python3的环境,现在因为一些需求,要安装python2环境 1.打开anaconda的anaconda prompt查看当前环境: conda in ...

  7. anaconda+python3.7+win10安装dlib_Windows系统下 Python(Anaconda)的 Dlib库 的安装

    0. 引言 介绍在 Windows  操作系统下,在 Python 的 Anaconda 集成环境中,安装 Dlib 库 : 对于不了解源码编译的,或者利用 cmake 方法失败的,可以尝试下此方法: ...

  8. IOS环境下vscode、anaconda与python环境配置

    本文主要设计在ios系统下的vscode.anaconda与python环境配置 下载安装 1.首先进入anaconda与vscode官网下载这两个软件 anaconda:https://www.an ...

  9. python在linux下安装方法(解决旧版本冲突)

    1.下载源代码 http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar.bz2 2.  安装 $ tar –jxvf Python-2.5.2. ...

最新文章

  1. 一.Linq to JSON是用来干什么的?
  2. 最全Python算法实现资源汇总!
  3. php mysql 时间字段_php – MySQL中各种日期/时间字段类型的优...
  4. 【dmp文件还原到oralce数据库】
  5. iOS APP安全杂谈之三
  6. 使用Spring AOP实现活动记录模式
  7. python学习过程中随手写的测试脚本-testloop.py
  8. mysql联合索引(复合索引)详解
  9. Fatal error: Allowed memory size of 524288000 bytes exhausted (tried to allocate 64 bytes) in D
  10. EDB*Plus的当前路径问题
  11. ArrayList和LinkedList的插入删除性能差距到底有多大
  12. 字节跳动面试经验 php,双指针算法:字节跳动初级面试题 PHP
  13. 使用perl统计单词(字母)
  14. 如何隐藏条形码的数据
  15. 利用Power BI制作分级地图报表
  16. 非线性薛定谔方程用matlab,非线性薛定谔方程数值解的matlab仿真.docx
  17. Gramine(原graphene-sgx)软件栈
  18. Day8:盈利源泉是否可持续(1)
  19. [组合计数] BZOJ 3505 [Cqoi2014]数三角形
  20. 安泰电子科普:电压源和电流源的区别是什么意思

热门文章

  1. KS检验学习[转载]
  2. Java 位运算理解 Java中的位移运算整理 Java右移n位 Java左移n位
  3. Linux shell 判断文件或目录是否存在
  4. python raise用处_raise是更好的return
  5. 面进百度,被这份阿里大能开源的“全彩版图解 HTTP 手册”折服了,要不怎么说还得是权威啊
  6. 基于深度学习的泰坦尼克旅客生存预测
  7. 云计算是否早已成为基础设施?
  8. [NOIP2004 提高组] 合唱队形-题解
  9. 手机壳鸿蒙,魅族手表发布,满屏都是手机特色,还正式接入鸿蒙
  10. caffe2安装记录