web-dev-qa-db-ja.com

PyCharm端末はconda環境を有効にしません

Windowsのデフォルトの場所であるC:\ProgramData\Anaconda2\envs\myenvにconda環境があります。また、推奨されるように、condaスクリプトと実行可能ファイルは%PATH%環境変数にありません。 pycharmでプロジェクトを開き、pythonインタープリターをC:\ProgramData\Anaconda2\envs\myenv\python.exeにポイントしました。pycharmは、python console、実行環境、およびデバッグモード。

ただし、ターミナルを開くと、環境はアクティブになりません(環境をアクティブにするためのチェックボックスがオンになっていることを確認しました)。明確にするために、virtualenvで同じことを行うと、ターミナルは問題なく環境をアクティブにします。

私が試したがうまくいかなかったいくつかのことを以下に示します。

  • アクティベートスクリプトをanacondaフォルダーから環境フォルダーにコピーしました
  • 環境下のanacondaフォルダーからScriptsフォルダーにアクティベートスクリプトをコピーしました
  • Virtualenv(環境がアクティブ化されるのと同じもの)からアクティブ化スクリプトをコピーしました
  • Anacondaフォルダーをパスに追加しました

これらのどれも機能しませんでした。ターミナルが開いたら、問題なく環境を手動でアクティブにできますが、自動的にアクティブにするにはどうすればよいですか?

14
pipefish

これは既知のようです issue

8
void

同じ問題にぶつかり、このソリューションを使用しました。

  1. File -> Settings -> Tools -> Terminalに移動します。

  2. Shell pathの値をcmd.exe "/K" C:\path\to\Anaconda3\Scripts\activate.bat your_environment_nameに置き換えます。

AnacondaをC:\Anaconda3にインストールし、myenvという名前の環境がある場合、設定は次のようになります。

Terminal Tool Application settings

13
darksinge

Linuxの設定を考えている人がいれば、その方法を次に示します。ホームdirにファイル.pycharmrcを作成します。ファイルを開き、以下を追加します

source ~/.bashrc
source ~/anaconda3/bin/activate your_env_name 

Pycharm File > Settings > Tools > Terminal > Shell pathに移動して、シェルパスを/bin/bash --rcfile ~/.pycharmrcに置き換えます。

これで端末を開くと、conda envがアクティブになります。

4
Muhammad Hannan

MacOSまたはLinuxユーザー向けの私のソリューションは次のとおりです。

まず、これを~/.bash_profileまたは~/.zshrcに追加します(シェルに依存します)。 condaが初期化された後に置くことを忘れないでください:

##### Activate conda env ######
[[ -n $CONDA_ENV ]] && conda activate $CONDA_ENV

そして、PyCharm設定に移動し、ツール->ターミナルのプロジェクト設定に移動して、CONDA_ENV = yourenvを環境変数に追加します

yourenvは、この特定のプロジェクトのcondaからのenv名です

2
Ethan Li

1)conda環境とプロジェクトが同じ名前を共有し、2)プロジェクトを同じディレクトリに保持する場合、この回避策を使用できます。

cmd.exe "/K" C:\path\to\Anaconda3\Scripts\activate.bat C:\path\to\Anaconda3 & activate %cd:C:\path\to\project\parent\directory\=%

最後の部分(%cd:C:\path\to\project\parent\directory\=%)現在の作業ディレクトリからプロジェクト名を推測する必要があります。たとえば、私はプロジェクトをZ:\、 そう %cd:Z:\=%は私のプロジェクト名を返します。詳細については、以下を参照してください。 Windowsバッチファイル内のサブストリングを置換する方法

2
mkocisak