解决Anaconda的python覆盖linux本地python版本

news/2024/9/23 7:23:24/

文章目录

  • 1 问题复现
  • 2 问题解决

1 问题复现

出现这个问题的原因是,在linux上安装了Anaconda后,无论python软链接怎么建立,输入python,输出的永远都是Anaconda中的python3。现在想要做的是输入python使用的是linux自带的python版本,输入python3使用的是Anaconda中的python版本。

出现这样问题的原因,可能是因为~/.bashrc中初始化Anaconda时,自动添加了对应的环境变量:

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/root/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; theneval "$__conda_setup"
elseif [ -f "/root/anaconda3/etc/profile.d/conda.sh" ]; then. "/root/anaconda3/etc/profile.d/conda.sh"elseexport PATH="/root/anaconda3/bin:$PATH"fi
fi
unset __conda_setup
# <<< conda initialize <<<

2 问题解决

查看python对应的文件位置:

which python

编译

vim ~/.bashrc

在最末位,添加如下内容:

alias python="/usr/bin/python"

然后建立python对应的python2的软链接:

cd /usr/bin
# 查看python的软件链接
ls -al *python*
# 删除原有的软件链接
rm -rf /usr/bin/python
# 建立新的软链接
ln -s /usr/bin/python2 /usr/bin/python
# 使前面的前面的配置文件生效
source ~/.bashrc

如果python2没有安装,可以使用如下的方法进行安装:

Linux安装Python2.71、下载python#
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz2、解压、编译安装(依次执行以下5条命令)#
tar -zxvf Python-2.7.9.tgzcd Python-2.7.9./configure --prefix=/usr/local/python-2.7.9makemake install3, 建立对应的软连接ln -s /usr/local/python-2.7.9/bin/python /usr/bin/python

http://www.ppmy.cn/news/289333.html

相关文章

CMake安装、配置编译C++代码(Mac、Linux)————附带详细步骤和代码

文章目录 0 背景1 安装CMake2 使用CMakefile.txt编译C程序 0 背景 因为需要使用cmake来进行跨平台编译&#xff0c;所以根据网上的资料学习和总结成此文。 1 安装CMake ## 1. 查看当前cmake版本 [rootlocalhost ~]# cmake -version cmake version 2.8.12.2 ## 2. 进行卸载 […

‘CMRESHandler‘ object has no attribute ‘_timer‘,socket.gaierror: [Errno 8] nodename nor servname pro

文章目录 1 错误重现2 解决3 调用方法写入es4 扩展 1 错误重现 在Mac上调用Python的CMRESHandler进行elasticsearch的日志写入时&#xff0c;遇到如下错误。一开始还以为是自己的语法出现了错误&#xff0c;排查出发现问题出在库中的代码上。在网上找了一圈都没有发现解决方案…

Ubuntu 18安装nerfstudio教程、踩坑记录

写在最前头&#xff01;&#xff01;&#xff01;配置nerfstudio需要cuda没有cuda请不用往下看了&#xff0c;cuda官方是要求11.3或者11.7我自己用的是阿里云的11.4亲测可用。 一、配置环境 安装anaconda3 去官网或者镜像下载anaconda3 的执行文件 官网&#xff1a;anaconda…

jQuery(一) 选择器

jQuery的基本设计思想和主要方法&#xff1a;选择某个网页元素&#xff0c;然后对其进行某种操作。 $(document) //选择整个文档 $(‘#myId’) //选择IDmyId的网页元素, 如果选择器中包含特殊字符&#xff0c;可以用两个饭反斜杠转义。 $(div.myClass) //选择class为…

Java中的注解

1 . 什么是注解 注解即元数据,就是源代码的元数据&#xff0c;注解在代码中添加信息提供了一种形式化的方法,可以在后续中更方便的 使用这些数据&#xff0c;Annotation是一种应用于类、方法、参数、变量、构造器及包声明中的特殊修饰符。 注解可以用来生成文档&#xff1b;跟…

Android自定义View——实现字母导航栏

思路分析 1、自定义View实现字母导航栏 2、ListView实现联系人列表 3、字母导航栏滑动事件处理 4、字母导航栏与中间字母的联动 5、字母导航栏与ListView的联动 效果展示 实现步骤 1、先看主布局&#xff0c;方便后面代码的说明 <?xml version"1.0" encoding…

二叉查找树(BST)专题

二叉查找树专题 二叉查找树的基本操作查找插入删除 二叉查找树的性质 代码来源&#xff1a;晴神《算法笔记》&#xff01;&#xff01; 二叉查找树的基本操作 查找 void search(node* root, int x){if(root NULL){printf("search failed\n");return;}if(root->…

1086 Tree Traversals Again (25分)

1 题目 1086 Tree Traversals Again (25分) An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example, suppose that when a 6-node binary tree (with the keys numbered from 1 to 6) is traversed, the stack operations a…