web-dev-qa-db-ja.com

pycharmでConda環境を使う

Conda envはsource activate env_nameを使って起動されます。

どうやってpycharmで環境を活性化できますか?

57
Abhinav Rai

最も良いPyCharm特有の答えは これはwasabiによる (下記)です。

ただし、一般的に、Conda環境内からインタプリタを使用したい場合は、 インタプリタの場所を変更する 使用したい特定の環境を指すことができます。 このコメント で述べたように/home/username/miniconda/envs/bunnies

ただし、 Mark Turnerによる回答 で説明したように、環境をアクティブにするときにシェルスクリプトを実行することは可能です。この方法ではシェルスクリプトは実行されませんが、シェルスクリプトを実行する必要がある場合は彼の回避策に従うことができます。

  • コンダプロンプトを開く
  • 環境を活性化する
  • condaプロンプトからpycharmを実行します。
33

開いた

pycharm/preferences/project /プロジェクトインタプリタ

そして、既存の通訳を確認してください。コンダ環境はすでにそこにリストされているかもしれません。

enter image description here

存在しない場合は、[Create Conda Env]ボタンを使用して新しいconda環境を作成できます。

enter image description here

特定のconda環境を探しているなら、 'add local'を使うことができます。 'localを追加'をクリックすると、conda環境のパスを入力します+ /bin/python

以下のコマンドを使用して、システム内のすべてのconda環境をリストすることができます。

>>conda info --env
# conda environments:
#
tensorflow            *  /Users/username/miniconda3/envs/tensorflow

自分のニーズに最も合ったアプローチを選択できます。

39
wasabi

上記のコメントの1つで述べたように、環境をアクティブにすると、環境変数の設定などの他のアクションを実行するスクリプトを実行できます。私はこれをした一つの環境で働いています。このシナリオでうまくいったのは、

  • コンダプロンプトを開く
  • 環境を活性化する
  • condaプロンプトからpycharmを実行します。

その後、Pycharmは環境をアクティブにすることによって設定された環境変数にアクセスしました。

9
Mark Turner

environment.ymlはどうですか

Pycharmは確かに新しいconda環境を作り出すことができます。残念ながら、 この問題 が修正されるまでenvironment.ymlのサポートは提供されません。つまり、そこで宣言されている依存関係はインストールされません。

そのようなファイルに基づいてプロジェクトで作業するとき、あなたはあなたのマシン上で手動で専用環境を作成/更新する必要があります:

conda env create -n <my-project>

それからenvironment.ymlが変更されるたびに(あなたまたは上流から)更新することを忘れないでください。

conda env update -n <my-project>

理想的ではない

2
Arnaud P

Wasabiのコメントで説明されているようにプロジェクトインタプリタを設定しても実際にはconda環境がアクティブにならないことを知っておくことは重要です。

私はPyCharmの中でxgboost(condaと一緒にインストールしたもの)を実行することに問題があり、それはPATHに追加されたいくつかのフォルダーも必要であることがわかった。結局、私は醜い回避策でやらなければならなかった:

  1. 与えられた環境のPATHに追加のフォルダが何であるかを調べます(cmdのecho %PATH%を使用)。

  2. ファイルの中で私は他の何よりも先頭にputを実行したいと思います。

import os os.environ["PATH"] += os.pathsep + os.pathsep.join(my_extra_folders_list)

これはまったく適切な解決策ではないことを私は知っていますが、私はMark Turnerが彼のコメントで述べたもの以外に何か他のものを見つけることができませんでした。

0
jiripi