conda安装python版本管理与虚拟环境设置

anaconda安装

anaconda安装后,python变为python3,改为python2.7的处理方法:

原因在于python的软连接被修改,

/usr/bin/python -> /usr/local/python3/bin/python3

软连接的查看可以使用以下命令:

ls -l /usr/bin/python

注意青色的为软连接,绿色的为文件夹。

我们可以发现:

 /usr/bin/python2 -> python2.7

于是只需删除python的软链接,同时将python2.7链接到python即可。

先删除默认的Python软链接:

sudo rm /usr/bin/python

然后创建一个新的软链接指向需要的Python版本:

sudo ln -s /usr/bin/python3.5 /usr/bin/python

为什么不用alias的原因

参考知乎未闻Code

问题的根源就在你的alias上面。

zsh 的alias的优先级是非常高的,它会首先替换为等号后面的内容,然后再执行。那么即使在虚拟环境下,在终端输入python并回车以后,实际执行的代码是:

/usr/local/bin/python3

你使用了绝对路径打开了系统中的Python3。

而由于你没有对pip 设定alias, 因此你使用pip 安装requests的时候,它调用的是虚拟环境下面的pip,所以requests会正确安装在虚拟环境下面。

若使用alias,则虚拟环境中python也只能是python2,影响使用。


python模块安装,使用国内源可以提高下载速度。

pip源更改:
pip源有好几个,我一直用的清华的pip源,它5分钟同步一次。
临时使用:
pip 后加参数 -i https://pypi.tuna.tsinghua.edu.cn/simple
例:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas
永久使用:
Linux下:
修改 ~/.pip/pip.conf (没有就创建一个), 修改 index-url至tuna,内容如下:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

1
2
windows下:
直接在user目录中创建一个pip目录,如:C:\Users\xxxx\pip,新建文件pip.ini,内容如下

 [global]
 index-url = https://pypi.tuna.tsinghua.edu.cn/simple

conda源更改:
conda源国内只有清华有,
修改源只需输入如下两行命令:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes

就可以了。
可以随便测试下速度,
conda install pandas


作者:DivinerShi
来源:CSDN
原文:https://blog.csdn.net/sxf1061926959/article/details/54091748
版权声明:本文为博主原创文章,转载请附上博文链接!

conda管理虚拟环境的常用命令如下:

转载至AlexInML

conda虚拟环境:conda create -n envname
conda激活虚拟环境:source activate envname
conda退出虚拟环境:source deactivate
conda列出所有虚拟环境:conda env list
conda克隆虚拟环境:conda create -n envname --clone evnname1
conda删除虚拟环境:conda remove -n envname --all
conda虚拟环境安装包:conda install -n envname package, 例如:conda install -n envname tensorflow-gpu=1.2.1

pip使用

(创建虚拟环境后如果直接用pip安装python包,默认会使用全局pip,所以pip安装的包会对所有环境生效。如果要安装只对某个虚拟环境生效的python包,
(1)可以指定虚拟环境名称:conda install -n envname tensorflow-gpu=1.2.1;
(2)也可以在创建虚拟环境的时候指定pip只对当前环境生效,参考链接

conda create -n superbad pip # 可以直接在虚拟环境中使用pip而不会影响全局库
source activate superbad
pip install -e fnawesome  # installing into superbad site packages
ipython  # runs superbad ipython
python  # runs the environment's python with access to fnawesome
source deactivate
ipython # no access to fnawesome

python版本

如果系统中同时存在python2和python3,在用conda创建虚拟环境的时候可以指定使用哪个版本的python:

conda create -n new-env python=2.7 pip

Anaconda 安装后的设置

参考use-default-python-rather-than-anaconda-installation-when-called-from-the-terminal

Having tried all the suggestions so far I think modifying the export statement in ~/.bashrc , as Piotr Dobrogost seems to suggest, is the best option considering the following:

  • If you remove the whole statement, you have to use full paths for conda binaries.
  • Using conda 4.4.10 links in the directory anaconda/bin/ point to binaries in the same directory, not the system ones in /usr/bin.
  • Using this approach you get the system programs for all that have been previously included in $PATH and also the ones specific to anaconda without using full paths.

So in ~/.bashrc instead of

# added by Anaconda3 4.3.0 installer
export PATH="/home/user/anaconda3/bin:$PATH"

one would use

export PATH="$PATH:/home/user/anaconda3/bin"

python相关

先查看系统中有那些Python版本:

$ ls /usr/bin/python*

/usr/bin/python            /usr/bin/python2-config  /usr/bin/python3m
/usr/bin/python2           /usr/bin/python3         /usr/bin/python-config
/usr/bin/python2.7         /usr/bin/python3.5
ls -l /usr/bin/python
# 注意青色的为软连接,绿色的为文件夹
whereis python
which python

anaconda3.7 -->添加“export PATH=/usr/local/anconda3/bin:$PATH“ 到/etc/profile,这样所有用户都可以使用Anaconda python3.7了。

将profile中该语句注释

anaconda卸载后恢复python

如果是anaconda安装到默认的位置(~/anaconda2)直接删除文件就可以了,但是这样再次启动python会出现

bash: /home/media/anaconda2/bin/python: No such file or directory

这是因为python路径改变了。解决方法:

hash -r

变为默认设置。

conda虚拟环境命令

conda虚拟环境:conda create -n envname
conda激活虚拟环境:source activate envname
conda退出虚拟环境:source deactivate
conda列出所有虚拟环境:conda env list
conda克隆虚拟环境:conda create -n envname --clone evnname1
conda删除虚拟环境:conda remove -n envname --all

!! 误操作bashrc后vim/cp/ls命令失效后补救措施

在终端中输入以下内容

/bin/cp /etc/skel/.bashrc ~/

它将用新的 ~/.bashrc 替换你的腐败 ~/.bashrc 。之后,您需要获取 %code% ,以便立即进行更改,写入终端,

source ~/.bashrc

或者如果不起作用,您可以关闭终端并再次打开它。

修改/etc/profile文件

通常情况下,/etc/profile文件是只读的,直接用vi或gedit打开修改后是无法保存的。要修改profile,需要取得root权限,(使用gedit编辑)应该如下:

$sudo gedit /etc/profile

或者

$sudo -s

$gedit /etc/profile

这样打开profile文件,修改后就可以保存了。

让修改后的profile文件立即生效的方法:

法1:

$. /etc/profile

.和/etc/profile之间有一个空格

发2:

$source /etc/profile

source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值