PyCharm 2021.1 Help

Configure a Python interpreter

Python interpreters in PyCharm

To work with your Python code in PyCharm, you need to configure at least one Python interpreter. You can use a system interpreter that is available with your Python installation. You can also create a Virtualenv, Pipenv, or Conda virtual environment. A virtual environment consists of a base interpreter and installed packages.

With PyCharm Professional, you can also configure interpreters to execute your Python code on remote environments: SSH, Vagrant, WSL (only for Windows), Docker, and Docker Compose

Python interpreters

When you configure a Python interpreter, you need to specify the path to the Python executable in your system. So, before configuring a Python interpreter, you need to ensure that you've downloaded Python and installed it in your system and you're aware of a path to it. You can create several Python interpreters based on the same Python executable. This is helpful when you need to create different virtual environments for developing different types of applications. For example, you can create one virtual environment based on Python 3.6 to develop Django applications and another virtual environment based on the same Python 3.6 to work with scientific libraries.

Python interpreters can be configured for a new project or for the current project (you can create a new interpreter or use one of the existing interpreters).

Setting an existing Python interpreter

At any time, you can switch your Python interpreter either using the Python Interpreter selector or in the project Settings/Preferences.

Change the Python interpreter using the Python Interpreter selector

  • The Python Interpreter selector is located on the status bar. It is the most convenient and quickest way to switch the Python interpreter. Just click it and select the target interpreter:

    Project interpreter selector

Change the Python interpreter in the project settings

  1. Press Ctrl+Alt+S to open IDE settings and select Project <project name> | Python Interpreter.

  2. Expand the list of the available interpreters and click the Show All link. Alternatively, click the The Configure project interpreter icon and select Show All.

    Show all available interpreters

  3. Select the target interpreter.

    View interpreters

    When PyCharm stops supporting any of the outdated Python versions, the corresponding Python interpreter is marked as unsupported.

Modify a Python interpreter

  1. Press Ctrl+Alt+S to open IDE settings and select Project <project name> | Python Interpreter.

  2. Expand the list of the available interpreters and click the Show All link. Alternatively, click the The Configure project interpreter icon and select Show All.

    Show all available interpreters

  3. Select the target interpreter and click Edit.

    Edit icon

    You can specify an alternative interpreter name for the selected interpreter. The Python interpreter name specified in the Name field, becomes visible in the list of available interpreters. Click OK to apply the changes.

    For remote interpreters (that are available in PyCharm Professional) you can modify configuration parameters.

    Edit interpreter settings

Creating a new Python interpreter

To add a new interpreter to the current project:

  1. Do one of the following:

    • Click the Python Interpreter selector and choose Add Interpreter.

    • Press Ctrl+Alt+S to open the project Settings/Preferences and go to Project <project name> | Python Interpreter. Then click the The Configure project interpreter icon and select Add.

      Selecting the Add command to create a new Python interpreter
  2. Choose the interpreter type to add and perform the specific settings:

    1. In the left-hand pane of the Add Python Interpreter dialog, select Virtualenv Environment. The following actions depend on whether the virtual environment existed before.

      creating a virtual environment

      If New environment is selected:

      1. Specify the location of the new virtual environment in the text field, or click Virtual environment location and find location in your file system. Note that the directory where the new virtual environment should be located, must be empty!

      2. Choose the base interpreter from the list, or click Choose the base interpreter and find a Python executable in the your file system.

        If PyCharm detects no Python on your machine, it provides two options: to download the latest Python versions from python.org or to specify a path to the Python executable (in case of non-standard installation).

        Downloading Python when creating a virtual env

      3. Select the Inherit global site-packages checkbox if you want that all packages installed in the global Python on your machine to be added to the virtual environment you're going to create. This checkbox corresponds to the --system-site-packages option of the virtualenv tool.

      4. Select the Make available to all projects checkbox, if needed.

      If Existing environment is selected:

      1. Expand the Interpreter list and select any of the existing interpreters. Alternatively, click Select an interpreter and specify a path to the Python executable in your file system, for example, C:\Python36\python.exe.

      2. Select the checkbox Make available to all projects, if needed.

    2. Click OK to complete the task.

    See Configure a virtual environment for more details.

    1. If you have added the user base’s binary directory to your PATH environmental variable, you don't need to set any additional options: the path to the pipenv executable will be autodetected.

      Path to the pipenve executable is autodetected
    2. Click OK to complete the task.

    3. If you have not modified the PATH variable, PyCharm shows an error message: Pipenv executable is not found. Discover the proper executable path as described in the pipenv installation procedure and enter the target string in the Pipenv executable field, for example: C:\Users\jetbrains\AppData\Roaming\Python\Python37\Scripts\pipenv.exe (Windows) or /Users/jetbrains/.local/bin/pipenv (macOS).

      Click OK to save the changes and complete the task.

    See Configure a Pipenv environment for more details.

    1. In the left-hand pane of the Add Python Interpreter dialog, select Conda Environment. The following actions depend on whether the Conda environment existed before.

      If New environment is selected:

      1. Specify the location of the new Conda environment in the text field, or click Conda environment location and find location in your file system. Note that the directory where the new Conda environment should be located, must be empty!

      2. Select the Python version from the list.

      3. Specify the location of the Conda executable file in the text field, or click Conda executable location and find location in the Conda installation directory. You're basically looking for a path that you've used when installing Conda on your machine.

      4. Select the Make available to all projects checkbox, if needed.

      If Existing environment is selected:

      1. Expand the Interpreter list and select any of the existing interpreters. Alternatively, click Select an interpreter and specify a path to the Conda executable in your file system, for example, C:\Users\jetbrains\Anaconda3\python.exe.

      2. Select the checkbox Make available to all projects, if needed.

    2. Click OK to complete the task.

    See Configure a Conda virtual environment for more details.

    1. In the left-hand pane of the Add Python Interpreter dialog, select System Interpreter.

      Adding a system interpreter

    2. In the Interpreter field, type the fully-qualified path to the required interpreter executable, or click the Browse button and in the Select Python Interpreter dialog that opens, choose the desired Python executable and click OK.

      If PyCharm detects no Python on your machine, it provides two options: to download the latest Python versions from python.org or to specify a path to the Python executable (in case of non-standard installation).

      Downloading Python when installing the system interpreter

      You will need admin privileges to install, remove, and upgrade packages for the system interpreter. When attempting to install an interpreter package through an intention action, you might receive the following error message:

      System Interpreter warning message
      As prompted, consider using a virtual environment for your project.

    3. Click OK to complete the task.

    See Configure a system interpreter for more details.

    This is a Professional feature: download PyCharm Professional to try.

    1. In the left-hand pane of the Add Python Interpreter dialog, click SSH Interpreter.

    2. In the right-hand pane select New server configuration, then specify server information (host, port, and username).

      adding an interpreter via SSH
    3. In the next dialog window, provide the authentication details to connect to the target server.

      specifying authentication details

      Select Password or Key pair (OpenSSL or PuTTY) and enter your password or passphrase. If Key pair (OpenSSL or PuTTY) is selected, specify:

      • Private key file: location of the file with a private key

      • Passphrase: similar to a password, it serves to encrypt the private key.

      Click Next to proceed with the final configuration step.

    4. In the next dialog window, verify the path to the desired Python interpreter. You can accept default, or specify a different one. You have to configure the path mappings between your local project and the server. To do that, click the Browse button next to the Sync folders field and enter the path to the local project folder and the path to the folder on the remote server.

      Setting SSH mappings

      You can also select the lowest checkbox to enable automatic upload of the local changes to the remote server.

    See Configure an interpreter using SSH for more details.

    This is a Professional feature: download PyCharm Professional to try.

    1. In the left-hand pane of the Add Python Interpreter dialog, click Vagrant:

      Add an interpreter

    2. Click the browse button the Browse button next to the field Vagrant instance folder, and specify the desired Vagrant instance folder.

      This results in showing the link to Vagrant host URL.

    3. The Python interpreter path field displays the path to the desired Python executable. You can accept default, or specify a different one.

    4. Click OK. The configured remote interpreter is added to the list.

    See Configure an interpreter using Vagrant for more details.

    This is a Professional feature: download PyCharm Professional to try.

    1. In the left-hand pane of the dialog, click WSL.

      Adding a WSL interpreter
    2. Select the Linux distribution and specify the path to the python executable in the selected Linux distribution. Typically, you should be looking for wsl.exe but you can specify any non default WSL distro.

    See Configure an interpreter using WSL for more details.

    This is a Professional feature: download PyCharm Professional to try.

    In the dialog that opens, select the Docker option, from the drop-down lists select the Docker server (if the server is missing, click New...), and specify the image name.

    Python interpreter path should have the default value:

    Choose a docker

      Click OK to complete the task.

      See Configure an interpreter using Docker for more details.

      This is a Professional feature: download PyCharm Professional to try.

      In the dialog that opens, select the Docker Compose option, from the drop-down lists select the Docker server, Docker Compose service (here web), configuration file (here docker-compose.yml )and image name (here python).

      Why we've chosen web? This choice is explained by the fact, that after configuring a Docker-Compose-based interpreter, we'll be able to create regular run configurations that will alter the behavior of the container we selected. Therefore, if we want to debug the code in a container, that's the one we should select here. All other containers in the compose file will always be started together with this one, but you won't be able to affect their behavior from PyCharm - they'll always behave as if you started them with the command docker-compose up from the command line.

      Next, wait while PyCharm starts your Docker-Compose configuration to scan and index:

      Configure remote Python interpreter

        Click OK to complete the task.

        See Configure an interpreter using Docker Compose for more details.

      When a remote Python interpreter is added, at first the PyCharm helpers are copied to the remote host. PyCharm helpers are needed to run remotely the packaging tasks, debugger, tests and other PyCharm features. Next, the skeletons for binary libraries are generated and copied locally. Also all the Python library sources are collected from the Python paths on a remote host and copied locally along with the generated skeletons. Storing skeletons and all Python library sources locally is required for resolve and completion to work correctly. PyCharm checks remote helpers version on every remote run, so if you update your PyCharm version, the new helpers will be uploaded automatically and you don't need to recreate remote interpreter. SFTP support is required for copying helpers to the server.

      Setting the default interpreter

      In PyCharm, you can specify an interpreter that will be automatically set for all newly created projects.

      1. From the main menu, select New Projects Settings | Settings for New Project (on Window and Linux) or New Projects Settings | Preferences for New Project (on macOS).

      2. Select Python Interpreter settings. Then either choose an existing interpreter from the Python interpreter list of click New interpreter to add a new interpreter. Click OK to save the changes.

        The change will become effective for all newly created projects in PyCharm.

      Managing interpreter packages

      For each interpreter, you can install, upgrade, and delete Python packages. By default, PyCharm uses pip to manage project packages. For Conda environments you can use the Conda package manager.

      Managing packages

      PyCharm smartly tracks the status of packages and recognizes outdated versions by showing the number of the currently installed package version (column Version), and the latest available version (column Latest version). When a newer version of a package is detected, PyCharm marks it with the arrow sign New version is available and suggests to upgrade it.

      By default, the Latest version column shows only stable versions of the packages. If you want to extend the scope of the latest available versions to any pre-release versions (such as beta or release candidate), click Show early releases.

      You can upgrade several packages at once. Hold Cmd (macOS) or Ctrl on (Unix or Windows), left-click to select several items in the list of packages, and then click Upgrade.

      See the detailed instructions:

      Last modified: 18 May 2021