デフォルトのAnaconda python環境を変更する方法


170

Anacondaをインストールして、py3k(Python 3.3を保持)とpy34(Python 3.4を保持)の2つの追加環境を作成しました。それらに加えて、Anacondaインストーラーがデフォルトで作成し、Python 2.7を保持する「root」という名前のデフォルト環境があります。この最後の1つがデフォルトです。ターミナルから「ipython」を起動すると、バージョン2.7が表示されます。Python 3.4で作業するために、(シェルで)コマンドを発行する必要があります

source activate py34
ipython

デフォルト環境をPython 3.4に変更します。これは問題なく機能しますが、たいていの場合、Python 2.7ではなくPython 3.4で作業するので、面倒です(私は教育目的のために保持していますが、かなり長い話です)。とにかく、デフォルトの環境をPython 3.4に変更する方法を知りたいと思います。最初からすべてを再インストールする必要はありません。


7
での使用を検討しsource activate py34ました.bashrcか?
2015

1
ご回答有難うございます。sourceコマンドはサブシェルではなく同じシェルで実行する必要があるため、bashスクリプトからsource activateを呼び出すことはできないと思うので、私は試していません。上記の2行をbashスクリプトに入れてみましたが、うまくいきません。
user2734434 2015

4
私が持っているCONDA_ROOT="/Users/bla/miniconda"source ${CONDA_ROOT}/bin/activate ${CONDA_ROOT}/envs/empty &> /dev/null、私の中で.bashrc、それが仕事の罰金に思えます。
2015

1
.bashrcはスクリプトとして実行されていないと思いますが、新しいシェルによって供給されているため、bashスクリプトを実行してそれをチェックすることはできません。
2015

3
@ user2734434 bashrcファイルはセッションの開始時に供給されるため、このファイルを入れるsource activateと、シェル環境に影響します。
asmeurer 2015

回答:


86

別の環境に変更したいだけの場合は、

source activate environment-name

environment-name`conda createで作成できます)


通常は、単に新しい環境を作成するのが最善です。ただし、デフォルト環境でPythonバージョンを本当に変更したい場合は、次のように変更できます。

まず、実行して最新バージョンのcondaを使用していることを確認します

conda update conda

次に実行します

conda install python=3.5

これにより、ルート環境のすべてのパッケージがPython 3バージョンに更新されます。それが不可能な場合(たとえば、一部のパッケージがPython 3.5用にビルドされていないため)、問題の原因となったパッケージを示すエラーメッセージが表示されます。

pipでパッケージをインストールした場合は、それらを再インストールする必要があります。


1
@flutefreakこれは実際には現在Windowsで動作します(conda update conda最初に実行して、最新バージョンであることを確認してください)。答えを更新します。
asmeurer 2015年

126
この答えは、デフォルトの環境を変更することについての質問には関係がないようです。
Bobが

16
@asmeurerしかし、それは求められていることではありません。彼はどの環境でもパッケージを更新したくありません。彼はpy34をデフォルト環境にして、介入なしでアクティブにしたいと考えています。そのため、「source activate」コマンドを送信する前にpy34がアクティブになっています。
Bobが

20
ここで@Bobに同意する必要があります。ルート環境のパッケージは3.5に更新され、これにより元の投稿者の特定の問題が解決された可能性があります。ただし、プロンプトを開いたときはルート環境のままなので、別のデフォルト環境を指定していません。これを達成したいと思っているすべての人がそれをグーグルグするので、この質問に終わるので、元の質問も回答された方が良いでしょう。おそらく、デフォルトの環境をルート以外のものに変更することは不可能ですか?
arjan

4
これは私にはうまくいきません。私のデフォルトはpython 3.4ですが、フラグを使用python=3.5してもpythonは3.4から3.5にアップグレードされませんでした...何か提案はありますか?
WillZ '18年

56

概要
互換性の理由から、Pythonのバージョンが異なる複数のAnaconda環境を持っている人もいます。この場合、デフォルトの環境を設定するスクリプトが必要です。この方法を使用すると、環境で使用しているpythonのバージョンを保持できます。

以下は、environment_name環境の名前であると想定しています。

Mac / Linux:
最後の行がになるようにbashプロファイルを編集しますsource activate environment_name。Mac OSXでは、これは〜/ .bash_profileです。他の環境では、これは〜/ .bashrcです。

例:
Mac OSXで実行した方法は次のとおりです

  1. ターミナルを開いて次のように入力します。

    nano ~/.bash_profile

  2. ファイルの最後に移動して次のように入力します。「p3.5」は私の環境です。

    source activate p3.5

  3. ファイルを終了します。新しいターミナルウィンドウを開始します。

  4. 次のように入力して、アクティブな環境を確認します

    conda info -e

結果は、デフォルトでp3.5環境を使用していることを示しています。

Windowsの場合:
コマンドファイル(.cmd)を作成しactivate environment_name、次の手順に従って、コマンドプロンプトを開くたびに実行されるようにします。

  1. 「my_conda.cmd」などのバッチファイルコマンドを作成し、Application Dataフォルダに配置します。
  2. を開くたびに自動的に起動するように設定しますcmd。この設定はレジストリにあります:
    キー:HKCU \ SOFTWARE \ Microsoft \ Commandプロセッサ
    値:AutoRun
    タイプ:REG_EXPAND_SZ
    データ: "%AppData%\ my_conda.cmd"

この回答から:https : //superuser.com/a/302553/143794


1
どうもありがとうございました。私のMacのバージョンではPython 2を取り除くことができないことがわかったので、2つの個別の環境をセットアップするための推奨アクションに従いましたが、すべての新しいターミナルウィンドウで環境をアクティブにすることを覚えておかなければならないのは非常に面倒でした。これでうまくいきます!
Livvy Jeffs 2017

壊れたパイプや冷凍コマンドプロンプトにこのリードは、私は、Windows 10の下にこれを行うとき
aaronsnoswell

Windows 10を使っている人なら誰でもこれでうまくいきますか?
Wassadamo

3
これは受け入れられる答えになるはずです(少なくともUNIXベースのCondaの場合)!
Simon Van Machin

50

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"

それで終わりです。


3
そして、質問は何ですか?
Dieter Meemken、2015

私はこの解決策を試しましたが、それでも私のパスにanaconda2が表示されていますか?
ウィリアムロス

10
これはデフォルトの環境を設定しません。condaを回避しているように見え、「python3」がデフォルトであると偽って見せかけています。「conda info -e」では、現在の環境として「root」が引き続き表示されます。私はまだコンダをデフォルトにする方法を探しています。
MrMas 2016年

8
これはcondaの観点からデフォルト環境を設定しません。condaを回避しているように見え、「python3」がデフォルトであると偽って見せかけています。「conda info -e」では、現在の環境として「root」が引き続き表示されます。これを修正するには、CONDA_PREFIXとCONDA_DEFAULT_ENVも設定する必要があります。それでも、答えは依然としてハックです。なぜこれを実行するための「組み込み」方法としてcondaがすでに提供されているので、「source activate <新しいデフォルト環境>」を実行しないでください。
MrMas 2016年

そこにある.bashrc.bash_profileのWindows 10上では?このjattenberg.github.io/PDS-Fall-2013/assets/install/…をフォローしているときに、cygwinの下で1つ見つかりました。しかし、OPに必要な機能を実現するために変更する必要があるのか​​どうかはわかりません。
Wassadamo

14

Windowsの場合、AnacondaにはcmdへのショートカットであるAnacondaプロンプトが付属しており、PATH変数にanacondaを追加せずにcondaコマンドを実行できます。その場所を見つけ、コピーしてコピーの名前を変更します(myenv_promptなど)。myenv_promptを右クリックし、コンテキストメニューでプロパティを選択します。

ここに画像の説明を入力してください

[ プロパティ]ウィンドウの[ ターゲット]フォームには、次のようなテキストが既に入力されているはず%windir%\system32\cmd.exe "/K" C:\Users\xxx\AppData\Local\Continuum\Miniconda3\Scripts\activate.bat C:\Users\xxx\AppData\Local\Continuum\Miniconda3\ です。このコマンドには3つの部分があります。 Miniconda3 \

3番目の部分をデフォルトとして使用する環境のパス(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は、Pythonのデフォルト環境としてmyenvを使用してcmdを起動するショートカットとして機能します。このショートカットは、スタートメニューに保持するか、タスクバーに固定できます。

この方法の1つの利点は、デフォルトの環境としてそれぞれ異なる環境を持ついくつかのショートカットを作成できることです。また、[ プロパティ]ウィンドウのフォームに[開始]と入力して、デフォルトのフォルダーを設定することもできます

お役に立てれば

PS:Anacondaプロンプトを見つける必要はなく、ショートカットのターゲットを変更することで実行できます。ただし、cmd.exeとactivate.batのパスを知っている必要があります。


2
これが一番の答えになるはずです
James McCormac

私はこの方法を使用しますが、最初の部分は少し異なります。C:\Windows\System32\cmd.exe /c start ""その解決策にたどり着いた方法はわかりませんが、構文
xtian

8

永久変更

conda install python={version}

一時的に変更

環境を表示

実行conda info --envs端末ウィンドウまたはAncondaプロンプトに

インストールしたい環境が表示されない場合

conda create -n py36 python=3.6 anacondaあなたの好みに合わせてPython 3.6バージョンを変更して実行してください

環境のアクティブ化(Anacondaプロンプトを使用)

activate envnmeこのコマンドで見つけることができるenvnmeを実行するconda info --envsと、例としてconda info --envsshow を実行できます。

base * C:\Users\DulangaHeshan\Anaconda3 py36 C:\Users\DulangaHeshan\Anaconda3\envs\py36

次に実行します activate py36

実行を確認する python --version

Windowsでは、ある環境を非アクティブにしてから別の環境をアクティブにすることをお勧めします。 https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html?highlight=deactivate%20environment


3
OPは、ベース環境をpy36に変更して、activate py36起動時に毎回実行する必要がないソリューションを必要としていると思います。
Wassadamo

6

正解(2018年12月現在)は...できません。アップグレードconda install python=3.6は機能する可能性がありますが、必要なパッケージをアンインストールできない場合は機能しない可能性があります。

Anacondaはデフォルトの環境を使用baseし、同じ名前で新しい(例えばpython 3.6)環境を作成することはできません。これは意図的なものです。ベースのAnacondaをpython 3.6にしたい場合、これを行う正しい方法は、python 3.6にAnacondaをインストールすることです。パッケージマネージャーとしてのAnacondaの目標は、さまざまな環境をカプセル化することです。そのため、アクティブ化をソースにアクティブ化する必要がある理由と、本番システムで多くの問題が発生する可能性があるため、ベースパッケージを自由に静かに切り替えることができない理由です。


基本環境が壊れており、動作する環境に置き換えたい場合はどうなりますか?
内部石

@endolith ベース環境が壊れており、動作する環境に置き換えたい場合はどうなりますか?Condaを再インストールします。
AMC

@AMC何度も再インストールしました。すべてをやり直すことなく、良好な状態を回復する方法が必要です
エンドリス

1
@endolith同じ正確な問題を修正するために複数回再インストールしましたか?どうして壊れたの?これについては別の場所で説明する必要がありますチャットルームを作成しました。
AMC

1

(何らかの理由で)プラットフォームで環境をアクティブ化するのに数秒かかるため、ここに提示された回答のいずれにも満足していませんでした。

デフォルトとして必要な環境が実際のデフォルトよりも優先されるように、パス変数を変更しました。

私の場合は、次のコマンドを使用して、環境 "py35"でそれを実現しました。

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

環境が保存されている場所を確認するには、それをアクティブにしてを入力しwhere pythonます。このアプローチに欠点があるかどうかはまだわかりません。また、conda実行可能ファイルのデフォルトパスも変更するためです。その場合はコメントしてください。


1

anacondaを使用してライブラリをインストールすると、これが表示されました。私のバージョンはPython 3. *から2.7になり、多くのものが機能しなくなりました。私が見つけた最善の解決策は、利用可能な最新バージョンを最初に確認することでした:

conda search python

次に、必要なバージョンに更新します。

conda install python=3.*.*

ソース:http : //chris35wills.github.io/conda_python_version/

その他の役立つコマンド:

conda info
python --version

私のバージョンはPython 3. *から2.7になり、多くのものが機能しなくなりました。私が何かを欠落していない限り、これは質問とOPで説明されていることに関連しているようには見えません。
AMC

0

デスクトップまたはタスクバーにanacondaプロンプトのショートカットを作成し、そのショートカットのプロパティで、「Target:」の最後のパスを環境のパスに変更します。

C:\ Users \ BenBouali \ Anaconda3 \はC:\ Users \ BenBouali \ Anaconda3 \ envs \ tensorflow-gpuに変更されます

下見

このようにして、そのショートカットをクリックして特定の環境を開くことができます。これをurパスに追加すると、ショートカットの名前を入力するだけで、Windowsの実行ボックスから実行できます。


0

Windowsでは、次の行を含むバッチファイルを作成します。

start cmd /k "C:\Anaconda3\Scripts\activate.bat C:\Anaconda3 & activate env"

引用符で囲まれた最初のパスは、Anacondaインストールのactivate.batファイルへのパスです。システム上のパスは異なる場合があります。もちろん、activateコマンドに続く名前は、希望する環境名にする必要があります。

次に、Anacondaプロンプトを開く必要があるときにバッチファイルを実行します。


0

ロードあなたの「ベース」の環境を- OPのようpy34-あなたは、端末/シェルを読み込むとき。

Bashを使用する場合は、次の行を追加します。

conda activate py34

あなたの.bash_profile(または.bashrc):

$ echo 'conda activate py34' >> ~/.bash_profile

新しいターミナルを実行するたびに、conda環境py34がロードされます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.