Use Conda environment in pycharm

Solution 1:

open

pycharm/preferences/project/Project Interpreter

And check existing interpreter. Conda environments may already be listed there.

enter image description here

If not exists, you can create a new conda environment with "Create Conda Env" button

enter image description here

If you are looking for a specific conda environment you can use 'add local'. When you click 'add local' you will input conda environment path + /bin/python

You can list all conda environment in your system with following commnad.

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

you can chose the approach best fits your needs.

Solution 2:

The best PyCharm specific answer is this one by wasabi (below).

In general though, if you want to use an interpreter from within a Conda environment then you can change the location of the interpreter to point to the particular environment that you want to use e.g. /home/username/miniconda/envs/bunnies as mentioned in this comment.

However, as mentioned in this answer by Mark Turner, it is possible to have a shell script executed when activating an environment. This method will not run that shell script, but you can follow his workaround if you need that shell script run:

  • open a conda prompt
  • activate the environment
  • run pycharm from the conda prompt

Solution 3:

How about environment.yml

Pycharm can create a new conda environment indeed. Unfortunately, until this issue is fixed, it won't offer environment.yml support, which means it won't install the dependencies declared there.

When working on a project based on such a file, you need to create / update the dedicated env manually on your machine:

conda env create -n <my-project>

Then remember to update each time environment.yml changes (from you or upstream).

conda env update -n <my-project>

Not ideal

Solution 4:

As mentioned in one of the comments above, activating an environment can run scripts that perform other actions such as setting environment variables. I have worked in one environment that did this. What worked in this scenario was to:

  • open a conda prompt
  • activate the environment
  • run pycharm from the conda prompt

Pycharm then had access to the environment variables that were set by activating the environment.