ChatGPT解决这个技术问题 Extra ChatGPT

Use Conda environment in pycharm

Conda env is activated using source activate env_name.

How can I activate the environment in pycharm ?


c
clockworks

open

pycharm/preferences/project/Project Interpreter

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

https://i.stack.imgur.com/4tQ5W.png

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

https://i.stack.imgur.com/domeA.png

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.


Is there any difference between using Pycharm's "Create Conda Env" vs creating a new conda environment in terminal and then accessing it via Pycharm's "Add Local"?
You can easily test. Create a conda env via pycharm and then oepn terminal and list all environments, if it is listed there, it means there are no difference. you can list conda env with following command on terminal: conda info --envs
i dont have that toggle. only add local and add remove.
Ctrl+Alt+S to show the "project preferences" or "project settings" as I cannot find a fricking menu button
A
Ari Cooper-Davis

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


It is possible for a conda package to ship a shell script that runs on environment activation. In that case, activating an environment does more than changing the PATH—it also runs such scripts. So in some cases there could be PyCharm-specific issues. In practice in my (limited) experience, however, such scripts are rare.
This is not entirely correct. As per above comment, conda envs can also have activation (and deactivation) scripts installed by packages in [your_env]/etc/conda/activate.d (and deactivate.d). PyCharm doesn't run these, but activate/source activate does and not running these scripts can (and does) lead to unexpected behaviour in PyCharm.
@user2856 completely agree. Activate does much more than change PATH. It can point to other batch scripts which set all kinds of environment variables beyond path. I would argue that this answer is wrong.
@user32882 You're absolutely right, I lifted that quote verbatim and was wrong to do so! I'll edit my answer.
M
Mark Turner

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.


This works,. Thank you! But surely there is a way to just open the PyCharm app and use the environment specified in the settings?
A
Arnaud P

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


T
TarekB

I had the same problem i am on windows 10 professional 64 bit my solution was to start Pycharm as adminstrator and it worked


j
jiripi

It seems important to me to know, that setting project interpreter as described in wasabi's comment does not actually activate the conda environment.

I had issue with running xgboost (that I installed with conda) inside PyCharm and it turned out that it also need some folders added to PATH. In the end I had to make do with an ugly workaround:

Find out what are the additional folders in PATH for given environment (with echo %PATH% in cmd) In the file I wish to run put to the top before anything else:

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

I know this is not at all proper solution, but i was unable to find any other beside what Mark Turner mentioned in his comment.


G
Gunjan Paul

To use Conda environment as PyCharm interpreter

activate Conda environment from Conda navigator open PyCharm from the navigator tool list in Conda Add interpreter section choose existing Conda environment and it automatically recognises the path of that environment's python.exe file


@user11675463 this worked, but a quicker way is to click the "Terminal" button at the bottom of Pycharm, activate your conda environment, and move on.
The good thing about Pycharm is that you can update conda environments from within it. So if you try to run code in an environment that does not allow it due to a lack of modules/libraries, you can install them with one mouse click.
Also make sure to not try and specify the conda executable first. Just browse for the Python interpreter as described here and PyCharm will fill in the other needed fields: docs.anaconda.com/anaconda/user-guide/tasks/integration/…
M
Maria

Go to settings at the top right corner of the PyCharm IDE. Go to Project:{Your Project Name}->Python Interpreter Go to the settings inside here and click add:

https://i.stack.imgur.com/BrvrU.png

In Add Python Interpreter select conda env Select existing environment and click on your required conda environment path from the dropdown menu OR add the path of the python.exe file in your conda environment. As a reference, I am adding the path for my windows10 system: C:\Users\maria\AppData\Local\Continuum\anaconda3\envs\python.exe It can vary for your system based on installation configs.


J
Javad Shirkhani

First , select Interpreter setting ... in right bottom of Pycharm.

https://i.stack.imgur.com/eUUQd.png

Then choose python.exe from your desired conda environment. My environment path is : C:\Users\javadsh\anaconda3\envs\tf-gpu\python.exe

https://i.stack.imgur.com/umIDt.png