Install the version your project requires — not automatically the newest one
A project may require Python 3.11 while your PC already has Python 3.14, or a course may specify Python 3.12 because its packages were tested there. Installing a specific version is normal and does not require deleting your newer interpreter.
Prefer a currently supported release whenever you control the project. Only install an older unsupported Python version when you have a real compatibility requirement and understand the security trade-off.
Install a specific Python version with the current manager
First inspect what can be installed. The current manager supports online listing by version tag:
Then install the required tag:
For automation, use pymanager install to avoid conflicts with the deprecated launcher.
Launch that version explicitly
The version selector prevents PATH order from deciding which interpreter runs.
Major/minor tag versus exact patch version
A tag such as 3.13 selects the matching managed runtime according to the manager's index. If your application must reproduce an exact patch release, check the available tag with py list --online and install the exact version exposed by the source.
Do not hard-code an exact patch version simply because it appears in an old tutorial. First confirm that it is still available and that your dependency actually requires that exact patch.
Use pyenv when you frequently switch versions
On macOS and Linux, pyenv is designed for installing and selecting multiple Python versions without replacing the operating system's Python. After installing pyenv and its build dependencies according to the project documentation:
pyenv local writes a project-specific version selection so entering that directory automatically chooses the intended interpreter.
For a one-off installation, your operating system package manager or the official Python.org macOS installer may be simpler. Avoid replacing a Linux distribution's system Python just to satisfy one project.
Create a virtual environment from the chosen interpreter
Installing the right Python version is only half the job. Create the environment using that interpreter so the project does not silently fall back to another one.
Windows
pyenv on macOS/Linux
Keep pip attached to the same Python version
A bare pip command can come from a different installation. Tie package operations to the interpreter:
Inside an activated virtual environment, python -m pip is usually the clearest form.
Verify before installing project dependencies
On Windows with multiple versions, also run:
Frequently asked questions
Can I install Python 3.12 if Python 3.14 is already installed?
Yes. Multiple Python versions can coexist. Use an explicit version selector or project environment so the intended interpreter is used.
Should I uninstall the newer Python version first?
Usually no. Removing a working runtime can break other projects. Install the required version alongside it.
How do I make a project use one Python version?
Create its virtual environment from the intended interpreter, or use a version manager such as pyenv on supported platforms.
References
- Python documentation — Using Python on Windows
- Python.org downloads
- pyenv project documentation (used where version management on macOS/Linux is discussed)
Commands and behavior were checked against current documentation on 8 August 2026. Python installation behavior changes over time, especially on Windows.