PyCharm 2020.3 Help

Configure a virtual environment

PyCharm makes it possible to use the virtualenv tool to create a project-specific isolated virtual environment. The main purpose of virtual environments is to manage settings and dependencies of a particular project regardless of other Python projects. virtualenv tool comes bundled with PyCharm, so the user doesn't need to install it.

Create a virtual environment

  1. Ensure that you have downloaded and installed Python on your computer.

  2. Press Ctrl+Alt+S to open the project Settings/Preferences.

  3. In the Settings/Preferences dialogCtrl+Alt+S, select Project <project name> | Python Interpreter. Click the The Configure project interpreter icon and select Add.

    Selecting the Add command to create a new Python interpreter
  4. 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 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 to inherit your global site-packages directory. 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.

  5. Click OK to complete the task.

You can create as many virtual environments as required. To easily tell them from each other, use different names.

Set an existing virtual environment

  1. Open the Settings / Preferences dialog by pressing Ctrl+Alt+S or by choosing File | Settings for Windows and Linux or PyCharm | Preferences for macOS.

    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

    Virtual environments are marked with Virtual environment.

  3. Select the target environment from the list and click OK to confirm your choice.

    Select a virtual environment

PyCharm can create a virtual environment for your project based on the project requirements.

Create a virtual environment using the project requirements

  1. Open any directory with your source files that contains the requirements.txt or file: select File | Open from the main menu and choose the directory.

  2. If no virtual environment has been created for this project, PyCharm suggests creating it:

    Create a virtual environment using the requirements.txt file

  3. Keep the suggested options, or specify the environment location or base Python interpreter. Click OK to complete the task.

Once you click OK, PyCharm creates an environment and installs all the required packages. On the completion, see the notification popup:

The environment is created

Note that if you ignore a suggestion to create a virtual environment, PyCharm won't create a Python interperter for your project. So, any time when you open a .py file, you'll see the warning with the options for configuring a project interpreter:

Warning with options for configuring a project interpreter

For any of the configured Python interpreters (but Docker-based), you can:

Once you have create a new virtual environment, you can reuse it for your other projects. Learn more how to setup an existing environment as a Python interpreter.

Last modified: 13 January 2021