Python installation guide for Windows, macOS, and Linux

Before you install, choose the right Python version
This Python installation guide is for beginners and practical users who need a clean setup on Windows, macOS, or Linux without disrupting existing tools. As of September 10, 2026, Python 3.14 is the current stable bugfix branch listed by the official Python release status pages, with Python 3.14.7 published on August 5, 2026. Python 3.15 is still listed as a pre-release branch, with its first final release planned for October 1, 2026. For normal work, install a stable Python 3.14 release unless a course, employer, or project specifically requires another supported version.
For most home, student, office, design, and construction-data workflows, the setup path is straightforward: install a supported Python 3 release, confirm that your terminal can find it, then create a virtual environment before adding project packages. You can find more setup articles in our installation guides.

| Situation | Recommended choice | Why it matters |
|---|---|---|
| New personal setup | Install the latest stable Python 3.14 release | You get current bug fixes and broad package support. |
| Course or workplace requires a version | Use the required minor version, such as 3.12 or 3.13 | Matching the project avoids compatibility surprises. |
| Testing upcoming language features | Use Python 3.15 only in a separate test environment | Pre-release versions can change and are not ideal for normal work. |
| Old Python 3.9 setup | Plan an upgrade | Python 3.9 reached end-of-life on October 31, 2025. |
This article reflects publicly available guidance from Python.org, the Python 3.14 documentation, the Python Developer’s Guide version status table, and the Python Packaging User Guide available on September 10, 2026.
Install Python on Windows
Windows differs from macOS and Linux because it does not include a system-supported Python installation by default. The official Python documentation now points Windows users to the Python Install Manager, which can be installed from Python.org downloads or through the Microsoft Store. The manager makes Python available through global commands, supports updates over time, and can manage multiple installed runtimes.
- Open the official Python downloads page in your browser and choose the Windows option for the current stable release.
- Install the Python Install Manager when prompted. If your organization uses managed software deployment, follow your administrator’s package method instead.
- Open a new terminal window. PowerShell or Windows Terminal both work.
- Run
py listto see installed Python runtimes. - Run
python --versionorpy --versionto confirm the active version.
If you are installing Python for everyday scripts, spreadsheets, product data cleanup, or design automation tasks, avoid installing packages globally at first. Create a project folder and use a virtual environment. That keeps one project’s package versions from interfering with another project’s tools.
On Windows, a typical first project setup looks like this:
mkdir python-test
cd python-test
py -m venv .venv
.venv\Scripts\activate
python -m pip install --upgrade pip
The official Windows guidance also notes that if python or py does not work after installation, PATH and app execution aliases may need attention. In practice, close and reopen the terminal first. If the command still opens the Store or reports that Python is not found, check the Windows app execution aliases and make sure the Python manager entries are enabled.
Install Python on macOS
macOS is Unix-derived, so Python behaves more like it does on Linux once you are working in Terminal. For beginners, the usual recommendation is the official macOS installer package from Python.org because it gives a straightforward, predictable setup. The official documentation states that current macOS installers are provided as standard .pkg files and that modern installer packages are signed and notarized by the Python Software Foundation for macOS Gatekeeper compatibility.
- Download the current stable macOS installer package for Python 3 from Python.org.
- Open the downloaded
.pkgfile and follow the installer screens. - After installation, open Terminal.
- Run
python3 --versionto confirm the installed version. - Run
python3 -m pip --versionto confirm that pip is available.
On macOS, use python3 rather than assuming the python command points to the version you just installed. Many tutorials still show python, but python3 is clearer on Unix-style systems and helps avoid confusion with older aliases or shell settings.
A clean macOS project setup looks like this:
mkdir python-test
cd python-test
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
After activation, there is one small but important change: python usually points to the virtual environment’s interpreter. That is why package commands inside an activated environment can safely use python -m pip.
Install Python on Linux without damaging the system Python
Most Linux distributions already include Python because many operating-system tools depend on it. That convenience comes with a risk. Replacing the system Python, or forcing package upgrades into it, can interfere with package managers or desktop utilities. The official Python documentation and packaging guidance both recommend caution with system-managed Python installations.
For a normal Linux desktop or server, first check what is already installed:
python3 --version
python3 -m pip --version
If Python is missing, install it through your distribution package manager. Commands vary by distribution:
| Distribution family | Typical command | Note |
|---|---|---|
| Debian or Ubuntu | sudo apt update && sudo apt install python3 python3-venv python3-pip |
python3-venv is often needed for virtual environments. |
| Fedora, RHEL, or CentOS Stream | sudo dnf install python3 python3-pip |
Package names can vary by release and repository policy. |
| Arch Linux | sudo pacman -S python python-pip |
Arch usually tracks newer packages quickly. |
| openSUSE | sudo zypper install python3 python3-pip |
Use the repository version unless you have a reason to compile. |
After installation, create a project environment instead of installing libraries into the global site-packages directory: See also: BUILDING MATERIALS.
mkdir python-test
cd python-test
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
Advanced users sometimes compile Python from source to access a newer minor version than their distribution offers. That can be valid, but it should not be the first choice for beginners. If you do compile from source, avoid overwriting the operating system’s default python3 command. Keep custom interpreters separate and document where they are installed.
Verify Python, pip, and virtual environments
Installation is not complete until you verify three things: the interpreter runs, pip is tied to the interpreter you intend to use, and your project can use an isolated environment. The safest habit is to call pip as a Python module rather than as a standalone pip command. Use python -m pip, python3 -m pip, or py -m pip, depending on your platform and active environment.
| Check | Windows | macOS or Linux |
|---|---|---|
| Python version | py --version or python --version |
python3 --version |
| pip version | py -m pip --version |
python3 -m pip --version |
| Create virtual environment | py -m venv .venv |
python3 -m venv .venv |
| Activate environment | .venv\Scripts\activate |
source .venv/bin/activate |
| Upgrade pip in environment | python -m pip install --upgrade pip |
python -m pip install --upgrade pip |
When the virtual environment is active, your terminal prompt often shows (.venv). That visual cue is useful because it tells you that packages you install now belong to the project environment, not to the operating system or another project.
Common installation problems and practical fixes
The terminal says Python is not found
On Windows, close the terminal and reopen it after installation. If the problem continues, check app execution aliases and confirm that the Python Install Manager commands are enabled. On macOS and Linux, try python3 --version instead of python --version. If python3 is also missing, install Python through the official installer or your distribution package manager.
pip is installed, but packages go to the wrong place
This usually happens when multiple Python versions exist on the same machine. Do not guess which pip command is being used. Run pip through the interpreter: python -m pip inside an activated virtual environment, py -m pip on Windows, or python3 -m pip on macOS and Linux before activation.
The project needs a different Python version
Different projects may require different Python minor versions. On Windows, the Python Install Manager and py command can list and select runtimes. On macOS and Linux, users often manage separate versions with platform tools or environment managers. The important rule is to check the project documentation first, then create a fresh virtual environment with the required interpreter.
Package installation fails because of permissions
Avoid solving permission errors by adding sudo to every pip command. On Linux especially, global pip installs can conflict with distribution-managed packages. Create a virtual environment and install packages there. If you truly need a global command-line tool, consider a tool-specific installation method rather than mixing it into the system Python.
Maintaining Python after the first install
Python setup is not a one-time event. Update patch releases within the same supported branch, keep old projects pinned to the versions they were tested with, and retire unsupported interpreters. The official version status table currently lists Python 3.14 and 3.13 in bugfix status, Python 3.12, 3.11, and 3.10 in security status, and Python 3.9 as end-of-life. A new project should not begin on Python 3.9 unless there is an unavoidable legacy requirement.
For practical maintenance, keep a small note in each project folder that records the Python version and major packages used. A simple requirements.txt file can help recreate the same environment later:
python -m pip freeze > requirements.txt
On another machine, after creating and activating a fresh virtual environment, install the same packages with:
python -m pip install -r requirements.txt
This habit is useful beyond software development. It helps when you use Python to clean supplier spreadsheets, rename project photos, process measurement data, or automate repetitive reporting tasks. A repeatable setup saves time when a laptop is replaced or a project file is shared with a teammate.
Frequently asked questions
Should I install Python 3.14 or wait for Python 3.15?
Most users should install the latest stable Python 3.14 release. As of September 10, 2026, Python 3.15 is listed as a pre-release branch, with its first final release planned for October 1, 2026. Pre-release versions are useful for testing, but they are not the safest default for everyday work.
Do I need to uninstall older Python versions first?
Not always. Multiple Python versions can coexist, but they can also confuse PATH, pip, and editor settings. If you are a beginner and do not need the older version, removing unsupported or unused installations can make troubleshooting easier. Keep an older supported version only if a project depends on it.
Why does macOS or Linux use python3 instead of python?
On Unix-style systems, python3 clearly identifies Python 3 and avoids ambiguity with older command aliases. After you activate a virtual environment, the plain python command normally points to that environment’s interpreter, which is expected.
Is it safe to use sudo pip install on Linux?
It is usually better to avoid it. System Python may be managed by the operating system, and global pip changes can create conflicts. Use a virtual environment for project packages. If you need a system-wide tool, look for the distribution package or the tool’s recommended installer.
How do I know the installation really worked?
Run a version check, confirm pip, create a virtual environment, activate it, and install or upgrade pip inside it. If those steps work without errors, your Python installation is ready for normal beginner projects.


