How to Install Python on Windows (2026)

How to install Python on Windows in 2026: the Python install manager that python.org now recommends, the older installer, winget, uv or WSL, and PATH fixes.

For most people, install the Python install manager from the Microsoft Store or python.org, then open a terminal and run python. Python’s own Windows documentation now recommends it, and the older full installer is deprecated. If you juggle several projects, uv can manage Python versions instead. If you deploy to Linux, use WSL.

Which method should you use?

MethodBest forTrade-off
Python install managerMost peopleA newer tool, so older tutorials won’t match
Full installer (deprecated)Existing setups and old tutorialsNot produced for Python 3.16 or later
wingetScripted or repeatable setupsOne system-wide version per package ID
uvSeveral projects, several versionsAnother tool to learn
WSLCode that runs on Linux serversA second environment to maintain

Method 1: the Python install manager

The install manager is a standalone tool that makes Python available as global commands on Windows and supports updates over time. The documentation says the Microsoft Store version and the python.org download are identical.

  1. Install it from the Microsoft Store (click Install), or download the file from python.org/downloads and double-click it. In PowerShell you can run Add-AppxPackage <path to MSIX> instead.
  2. Open a terminal and type python. If no runtime is installed yet, the manager installs the current latest release for you.
  3. If you are asked to add a directory to your PATH when the first runtime installs, that is optional. It only matters if you want the full range of aliases such as python3.15.exe; the py command works without it.

After installation the python, py and pymanager commands are available. The commands you will use most:

python --version        # the default runtime
py list                 # installed runtimes, and which is the default
py install 3.14         # add another Python version
py -V:3.14              # launch a specific installed version
py uninstall 3.14       # remove one

Create a virtual environment for each project rather than installing packages globally: python -m venv .venv, then run .venv\Scripts\Activate. The virtual environments guide explains why.

Method 2: the full installer (deprecated)

The traditional installer is deprecated since Python 3.14 and will not be produced for 3.16 or later. Many tutorials still describe it, and it still works for Python 3.15. Run it and tick Add python.exe to PATH on the first screen so the install directory is added to your PATH, then choose Install Now and open a new terminal.

If you have an older Python installed, remove it or undo your PATH changes before installing the install manager. The documentation warns that existing installs and modified PATH entries can stop the new commands working.

Method 3: winget

If you prefer the command line, winget can install Python:

winget search Python.Python
winget install Python.Python.3.14

Check the package list with winget search first, as the available version numbers change with each release.

Method 4: uv

uv installs and switches Python versions per project, which avoids the “which Python is this?” problem:

winget install --id=astral-sh.uv -e
uv python install 3.14
uv init my-project
cd my-project
uv run python --version

Installing Python through uv doesn’t change your system python command, so it is safe alongside any other install. For how it compares with other version managers, see pyenv vs uv.

Method 5: WSL

Windows Subsystem for Linux runs a Linux distribution inside Windows. Install it with wsl --install, then install Python the Linux way inside it. Choose this if your production servers run Linux, because paths, line endings and some packages behave differently on native Windows.

How to uninstall Python on Windows

  • Installed with the install manager: run py uninstall 3.14 (use the tag from py list). To remove everything it manages, run py uninstall --purge, which also cleans up the Start menu, registry entries and download caches. Runtimes that were not installed by the manager are left alone.
  • Installed with the older installer: open Settings, Apps, Installed apps, find the Python entry and choose Uninstall.
  • Check it worked: open a new terminal and run where python. If a path still appears, another install is on your PATH.

Fixing common problems

  • “python is not recognized”, or python opens the Microsoft Store: open Manage app execution aliases from the Start menu and check that the aliases for Python (default) are enabled; if they already are, disable and re-enable them. Check that py and pymanager work, and that your PATH contains %UserProfile%\AppData\Local\Microsoft\WindowsApps. Open a new terminal after any change.
  • Wrong version runs: where python lists every python on PATH in order, and the first one wins.
  • pip not found: use python -m pip install <package>, which always uses the pip belonging to that Python.

Next steps

Create a virtual environment for each project. Then pick an editor: see the best Python IDEs and editors. One Windows-specific note: Python 3.15 makes UTF-8 the default for open(), which removes a class of encoding bugs on Windows.

Frequently Asked Questions

What is the best way to install Python on Windows?

Install the Python install manager from the Microsoft Store or python.org, which is the method Python’s Windows documentation now recommends. Then open a terminal and run python. If you work on several projects with different versions, uv can download and manage Python versions instead. Use WSL if your code will run on Linux servers.

How do I check that Python installed correctly on Windows?

Open a new terminal and run python —version, then py —version. Both print a version number when Python is installed. Run py list to see every runtime the Python install manager knows about and which one is the default.

Why does Windows say python is not recognized, or open the Microsoft Store?

Python’s documentation says to check that the app execution aliases for Python (default) are enabled under Manage app execution aliases, and to try disabling and re-enabling them. Also check that the py and pymanager commands work and that your PATH contains %UserProfile%\AppData\Local\Microsoft\WindowsApps. Open a new terminal after installing.

How do I uninstall Python on Windows?

For runtimes installed by the Python install manager, run py uninstall followed by the version tag, for example py uninstall 3.14. Add —purge instead of a tag to remove every runtime it manages, including Start menu entries, registry entries and download caches. For older installer-based installs, use Installed apps in Windows Settings.

Should I use WSL for Python development?

Use WSL if you deploy to Linux, need Linux-only tools, or want a shell closer to production. For scripts, data work and learning, native Windows Python is simpler and works well.