Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.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
拥有默认的Mac Python 2.7和Anaconda Python 3_Python_Macos_Python 2.7_Python 3.x_Anaconda - Fatal编程技术网

拥有默认的Mac Python 2.7和Anaconda Python 3

拥有默认的Mac Python 2.7和Anaconda Python 3,python,macos,python-2.7,python-3.x,anaconda,Python,Macos,Python 2.7,Python 3.x,Anaconda,我想保留macpython作为我的主要“Python”。原因是Python网站中的推荐。我还想为我的蟒蛇3(蟒蛇)添加一个单独的环境 为此,我安装了Anaconda Python以访问Conda,然后使用以下命令为我的Python3创建了一个环境: conda create -n py36 python=3.6 anaconda 当我安装Anaconda python时,它将此添加到我的.bash_配置文件中,以访问所有conda命令: # added by Anaconda3 4.4.0 i

我想保留macpython作为我的主要“Python”。原因是Python网站中的推荐。我还想为我的蟒蛇3(蟒蛇)添加一个单独的环境

为此,我安装了Anaconda Python以访问Conda,然后使用以下命令为我的Python3创建了一个环境:

conda create -n py36 python=3.6 anaconda
当我安装Anaconda python时,它将此添加到我的.bash_配置文件中,以访问所有conda命令:

# added by Anaconda3 4.4.0 installer
# export PATH="/Users/omidb/anaconda/bin:$PATH"
现在我的默认python是anaconda python,我不想这样做

如何将默认Mac python作为我的主python,然后在需要Anaconda时,只需使用
source activate py36

更新的答案 在测试之后,我觉得应该提供一个简单的解决方案,使用macpython作为默认值,并且只在需要时使用condapython

您需要通过
export
命令将
conda
路径添加/移动到
path
环境的末尾。这应该允许您使用Mac Python作为默认值,并且仅在调用
source activate py36
后使用Anaconda Python

export PATH="$PATH:/Users/omidb/anaconda/bin"
路径分辨率 此解决方案假定您的
路径中已经有
/usr/bin/
(Mac Python所在的位置)。解析顺序应首先检查该目录,假定它位于
路径中的第一个。此外,此设置不需要
/usr/local/bin
中的符号链接。我不喜欢操纵系统级资源,以获得可以通过用户资源(目录)实现的解决方案

默认Python设置 将Anaconda路径移动到
path
环境变量的末尾后,可以验证
哪些python
引用了
/usr/bin/python
,即Mac python的位置。默认情况下,您将在命令行中运行Mac
python

运行Conda-Python 如前所述,要使用
conda
虚拟环境,必须调用
source activate py36
。无需将符号链接添加到
/usr/local/bin
,因为它们已通过
~/anaconda/bin/
提供

此外,
source activate py36
(或任何其他Anaconda环境),它将为Anaconda
python
添加适当的环境路径到
path
环境变量的开头,当在命令行上作为
python
运行时,将执行该变量(返回到路径解析)。运行
源代码激活py36
后,可以使用
哪个python
来验证这一点
conda
还将以前的路径存储为环境变量
conda\u path\u BACKUP

停用康达
运行
sourcedeactivate
后,原始路径将恢复,因此您将返回运行Mac
python
时遇到相同的问题,问题太老,但我发现最简单的方法是:


1.让我们检查一下默认的python版本是否指向Conda python
which python - If Conda installation updated to your bashrc or zshrc, it will show that path
  • 运行命令:

    conda config--将自动激活设置为false

  • 这将确保当你启动终端时,康达不会被激活为基地

    现在,如果您选中
    python--version
    哪个python
    ,它应该指向mac默认的python版本

  • 现在,只要您想使用conda,所有conda命令都可以通过
    conda

  • 使用
    conda Create--name venv
    创建虚拟环境,并使用
    conda activate


  • 现在,,我能够使用conda所需的不同python版本和默认python版本作为系统默认版本

    路径
    中删除
    /Users/omidb/anaconda/bin
    ,并在
    /usr/local/bin
    中创建
    /Users/omidb/anaconda/bin/activate
    /Users/omidb/anaconda/bin/deactivate>的符号链接。从现在开始,您的默认python将是Mac附带的python。要使用
    anaconda python
    ,请运行
    source activate py36
    。完全同意@alvits的说法,即您不希望将
    conda
    环境添加到
    PATH
    环境变量中。顺便说一句,你不需要添加符号链接。@tdube-我和很久以前的OP一样陷入了同样的困境。如果我没有创建符号链接,我必须键入完整的路径名以
    激活
    @alvits这可能会起作用,但它不是很好,因为我必须添加其他东西,如conda和…这很好,我的安装运行没有问题。我甚至有4个不同python版本的环境。我创建的唯一符号链接是
    activate
    deactivate
    conda
    。如果不创建符号链接,则必须指定
    activate
    的完整路径。您至少需要
    activate
    才能在路径中,因此建议使用符号链接。@t这样,默认Python将是Anaconda而不是Mac Python,因为它将修改PATH@Omid-我还猜测tdtube正在运行windows。因此,默认的python并不重要,因为windows没有任何python。@不,我在Mac上。对于我的设置,我只是不想使用默认的MacPython。有点。。。日期:)是的,你在Mac电脑上。但是您的默认python不再是Mac python。OP希望保留默认的python。