2015-02-10 40 views
91

我安裝了Anaconda並創建了兩個額外的環境:py3k(其中包含Python 3.3)和py34(包含Python 3.4)。除此之外,我有一個名爲'root'的默認環境,Anaconda安裝程序默認創建並保存Python 2.7。最後一個是默認的,每當我從終端啓動'ipython'時,它會給我2.7版本。爲了與Python 3.4的工作,我需要發出命令(在shell)如何更改默認的Anaconda python環境

source activate py34 
ipython 

其更改默認環境下的Python 3.4。這很好,但是這很煩人,因爲大部分時間我在Python 3.4上工作,而不是Python 2.7(我爲了教學目的而持有它,這是一個相當長的故事)。無論如何,我想知道如何將默認環境更改爲Python 3.4,同時銘記我不想從頭開始重新安裝所有的東西。

+2

你有沒有考慮在你的'.bashrc'中使用'source activate py34'? – cel 2015-02-10 16:54:51

+1

感謝您的回答。我沒有嘗試過,因爲我認爲無法從bash腳本調用源代碼激活,因爲源代碼命令需要在同一個shell中運行,而不是在子shell中運行。我試着把上面的兩行放到一個bash腳本中,我可以說不起作用。 – user2734434 2015-02-10 16:58:19

+2

我'CONDA_ROOT = 「/用戶/ BLA/miniconda」'和' 源$ {} CONDA_ROOT /斌/激活$ {} CONDA_ROOT/ENVS /空&>的/ dev/null'在我的'.bashrc'它似乎工作正常。 – cel 2015-02-10 17:04:04

回答

52

首先,確保你有最新版本的暢達的運行

conda update conda 

然後運行

conda install python=3.5 

這將嘗試在你的根更新環境中的所有程序包的Python 3個版本。如果不可能(例如,因爲某些軟件包不是爲Python 3.5構建的),它會給你一個錯誤信息,指出哪個軟件包引起了問題。

如果您使用pip安裝軟件包,則必須重新安裝它們。

+0

因此,如果我想從python 3.4更新我的根環境到3.5,我可以'conda安裝anaconda python = 3.5'?我在Windows上,我也有一些點和其他包。當你說「最後一個項目不能在Windows中工作」時,你是指'--clone'選項,還是你的第4個項目符號? – flutefreak7 2015-11-03 20:02:23

+1

@flutefreak它實際上可以在Windows上運行(首先運行「conda update conda」以確保您擁有最新版本)。我會更新答案。 – asmeurer 2015-11-03 22:20:43

+0

是的'conda更新conda'成爲解決我記錄[這裏](https://github.com/ContinuumIO/menuinst/issues/16)另一個問題的必要條件。我實際上做了'conda update conda python = 3.5',它更新了conda和python,然後'conda update anaconda'拿起了Python 3.5的變更並相應地更新了anaconda。不知道訂單是否重要,但這對我來說很有用。 – flutefreak7 2015-11-03 22:23:52

31

在Linux下有修改~/.bashrc~/.bash_profile 在最後你會發現像

# added by Anaconda 2.1.0 installer 
export PATH="~/anaconda/bin:$PATH" 

# set python3 as default 
export PATH="~/anaconda/envs/python3/bin:$PATH" 

和多數民衆替換它設置默認的環境更簡單的方法所有這一切都是爲了它。

+1

問題是什麼? – 2015-12-19 22:53:00

+0

Jev,對於投票表示歉意,這是一個意外,如果你對你的答案做出任何修改,我將能夠將我的意外的投票改變爲一個投票,實際上我發現這很有用。 – 2016-06-20 14:15:59

+0

我試過這個解決方案,但它仍然顯示anaconda2在我的道路上,有什麼想法? – 2016-11-14 11:16:24

22

概述
由於兼容性的原因,一些人有不同版本的python的多個Anaconda環境。在這種情況下,您應該有一個腳本來設置您的默認環境。使用這種方法,您可以保留您在環境中使用的python版本。

以下假定environment_name是你的環境

的Mac/Linux上的名稱:
編輯您的bash配置文件,以便最後一行是 「源激活environment_name」。在Mac OSX這是〜/ .bash_profile中,在其他環境中,這可能是在〜/ .bashrc

例子:
這裏是我是如何做到的Mac OSX上

  1. 打開終端和類型:

    nano〜/。在.bash_profile

  2. 轉到文件結尾,然後鍵入以下內容,其中 「P3.5」 是我的環境:

    源激活P3.5

  3. 退出文件。開始一個新的終端窗口。

  4. 鍵入以下命令來看看什麼樣的環境是-e

結果積極

暢達的信息表明,我使用默認我的P3.5環境。

對於Windows:
創建命令文件(.CMD)以「激活environment_name」,並按照這些指示的,只要你打開一個命令提示符

  1. 創建一個批處理文件,它執行命令,例如「my_conda.cmd」,將其放入Application Data文件夾中。
  2. 將其配置爲在您打開cmd時自動啓動。此設置在註冊地:
    鍵:HKCU \ SOFTWARE \微軟\命令處理器
    值:自動運行
    類型:REG_EXPAND_SZ
    數據: 「%APPDATA%\ my_conda.cmd」

從這個答案:https://superuser.com/a/302553/143794

+1

非常感謝。我發現在我的Mac版本中,我無法擺脫Python 2 - 因此遵循建議的操作來設置兩個單獨的環境,但是非常煩人的是必須記住在每個新的終端窗口上激活環境。這工作! – 2017-09-12 14:51:04

0

我並不滿足於任何這裏給出的答案,因爲激活一個環境需要幾秒鐘我的平臺上(無論何種原因)

我修改我的路徑變量,以便我想要的默認環境優先於實際的默認值。

在我來說,我用下面的命令來完成,對於環境「py35」:

setx PATH "%userprofile%\Anaconda3\envs\py35\;%PATH%" 
setx PATH "%userprofile%\Anaconda3\envs\py35\Scripts;%PATH%" 

找出您的環境的存儲位置,激活並進入where python。 我不確定如果這種方法有任何缺點。因爲它也改變conda可執行文件的默認路徑。如果是這樣的話,請評論。

1

對於Windows Anaconda附帶Anaconda Prompt,它是cmd的快捷方式,可用於運行conda命令,而無需在PATH變量中添加anaconda。 找到它的位置,複製並重命名副本(比如myenv_prompt)。右鍵單擊myenv_prompt並在上下文菜單中選擇屬性。

enter image description here

目標窗體屬性窗口的應該已經充滿文字,像%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\ 有此命令1三個部分組成)開始... \ CMD.EXE 2)運行.. 。\ acitvate.bat與環境3)...\ Miniconda3 \

更改第三部分對環境的路徑(比如myenv)要作爲默認即填寫目標形式%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\envs\myenv

現在myenv_prompt將作爲快捷方式,啓動CMD與myenv作爲python的默認環境。這個快捷方式可以保存在開始菜單或固定在任務欄中。這種方法的

一個好處是,你可以創建一些快捷方式各有不同環境作爲默認的環境。您也可以通過形式的屬性窗口的填充開始設置默認文件夾

希望這有助於

PS:不要求發現蟒蛇提示,可以通過改變任何快捷鍵的目標來完成。但是你需要知道的cmd.exe路徑和activate.bat

1

在你的情況,你只需要從康達提示適用於以下命令。

>conda config --set core.default_env=py34 

然後,如果需要關閉並重新啓動康達提示。

+0

這不應該工作 – 2017-11-05 14:46:44

相關問題