跳转至

A Modern Python Environment Guide for 2025

Hello, and welcome to the world of Python!

This guide isn't about teaching you to print("Hello World"); there are countless tutorials for that online. Our goal is a step beyond that: to introduce you to the most modern and efficient ways to set up your environment and manage projects with Python in 2025.

Python may be a classic language, but its ecosystem of tools is evolving at an unprecedented pace. Forget the old, complicated configuration methods. This article will guide you through using uv,pip and VSCode with extensions to build a development environment perfect for study, research, and even production.

A Note for Newcomers To make things easier to understand, we might use some explanations that aren't strictly 'academic'. If you can spot and point out these simplifications, then congratulations! You're already beyond the scope of this guide and ready for bigger challenges!


Part I: Preparing Your Operating System's Foundation

Before building a house, you need to choose the right plot of land. The Python environment on different operating systems has some subtle but important differences.

1. Choosing Your System

  • For Linux Users: Congratulations, your system is Python-friendly. Most Linux distributions come with Python pre-installed.

  • For macOS Users: Things are a little different. As of macOS Monterey 12.3, Apple no longer pre-installs Python for you. You'll need to roll up your sleeves and install it yourself. We recommend using Homebrew:

    brew install python
    

  • For Windows Users: We strongly recommend that Windows 10/11 users enable WSL (Windows Subsystem for Linux). It gives you a native Linux environment right within Windows, offering a superb experience. Some even joke that "WSL is the best Linux distro." If you'd rather not use WSL, you can always download the installer from the official Python website. But trust us, WSL will make your future Python journey a hundred times smoother.

2. The Golden Rule: Don't Touch the System Python!

No matter what system you use, please remember this golden rule: Never directly develop projects or install third-party packages in your system's default Python environment!

Why? Think of your operating system as a complex, precision-engineered building. Many of its internal pipes and wires (system tools, scripts) depend on a specific version of Python and its basic packages to function correctly. If, for your own project, you were to randomly upgrade or alter these 'fittings' (like upgrading the requests package from v1.0 to v2.0), you could instantly cause some of the building's core functions (system services) to fail.

This is, without a doubt, the easiest and most common trap for newcomers to fall into. So, how do we avoid this disaster? The answer is environment isolation.


Part II: The Core Concept: Environment Isolation & Package Management

1. What is Environment Isolation?

To avoid making a mess of our system 'building', we construct a separate 'show flat' for each new project. This 'show flat' is an isolated virtual environment.

Inside this environment, you can: * Install a specific version of the Python interpreter (e.g., Project A uses Python 3.10, while Project B uses Python 3.12). * Install, upgrade, and uninstall any third-party packages you want, without any restrictions.

No matter how you furnish or renovate this 'show flat', it won't affect the main system 'building' or any other projects. It's safe, clean, and reproducible: the cornerstone of professional development.

2. Your Key to the Treasury: The pip Package Manager

Half of Python's power comes from its thriving ecosystem of third-party packages. And pip is the key that unlocks this treasury for you. It's Python's official package manager and comes built-in with your Python installation.

Using pip is very straightforward:

# Install a package
pip install numpy

# Upgrade a package
pip install numpy -U

# Uninstall a package
pip uninstall numpy

# List all packages installed in the current environment
pip list

Best Practice When working in a team or deploying a project, we typically list all required packages and their versions in a file called requirements.txt. You can then install everything with a single command:

pip install -r requirements.txt

Part III: The Modern Toolkit: uv, the Blazingly Fast Environment Manager

We now know that using pip directly in the system environment is a recipe for disaster. Before we install anything, we must first create and activate an isolated environment.

Traditionally, we used Python's official venv module or the more powerful conda. However, in 2024, a new tool called uv burst onto the scene. With its ridiculously fast speed and seamless integration of venv and pip functionalities, it has quickly become a developer favourite.

1. Installing uv

uv is a standalone tool that needs to be installed manually. Don't worry, the official one-line installation script makes it incredibly simple.

  • For Linux, macOS, or WSL users, run this in your terminal:
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  • For Windows (PowerShell) users, run this in your terminal:
    irm https://astral.sh/uv/install.ps1 | iex
    

2. Using uv: The Three-Step Workflow

Now, let's use uv to set up an environment for a new project. The workflow is simple; just remember these three steps: Create -> Activate -> Use.

Step 1: Create the Virtual Environment

Navigate to your project's root folder and run the following command:

uv venv

uv will create a folder named .venv in the current directory. This is the 'show flat' we talked about earlier.

Tip: Specifying a Python Version If you want to use a specific Python version, you can specify one using the --python flag:

uv venv --python 3.11

Step 2: Activate the Environment

Once created, you need to 'step inside' to use it. This process is called 'activation'. * For Linux, macOS, or WSL:

source .venv/bin/activate
* For Windows:
.venv\Scripts\activate
Once activated successfully, you'll notice a (.venv) prefix appear at the start of your command-line prompt. This is a reminder that "You are now inside the virtual environment and can work safely!"

Step 3: Use Your Tools

After activation, everything works just as you'd expect.

  • Start the Python interactive shell:
    python
    
  • Run a Python script:
    python example.py
    
  • Install a package and run a tool (e.g., Jupyter Notebook):
    # Install Jupyter using uv pip
    uv pip install jupyter
    
    # Launch Jupyter Notebook
    jupyter notebook
    

Tip: Why use uv pip instead of pip?

After activating the environment, you might notice that the standard pip command also works perfectly well for installing packages. So why do we recommend using uv pip?

The answer is performance. uv pip is a complete rewrite of pip in the Rust programming language. While the Rust community can be famously enthusiastic (lol), it's impossible to deny the results: the performance of uv after being rebuilt in Rust is astonishingly better than the native pip.

Therefore, for much faster installation speeds and a better overall experience, we strongly recommend using the uv pip command.

Finally: Exiting the Environment

When you've finished your work and want to return to the system's default environment, just run:

deactivate

You'll see the (.venv) prefix disappear from your command prompt.


And there you have it! You've now mastered the most current and efficient method for setting up a Python environment in 2025. The next step is to begin your coding adventure.