Use uv to manage Python environments
Say goodbye to cumbersome Python environment management! uv is an efficient and convenient tool that can solve Python version management, virtual environment creation, package management, project management and other problems in one stop. It is fast and easy to get started. This article will take Windows PowerShell as an example to demonstrate the use of uv. For other platforms, you can refer to the official documentation for corresponding adjustments.
Install uv
uv does not depend on Python, so it is not recommended to use pip or pipx to install. Windows systems can be installed directly by executing the following command through PowerShell:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Or install using a package manager such as scoop:
scoop install uv
Use uv to manage multiple versions of Python
Use the uv python list
command to view installable and installed Python versions:
# uv python list cpython-3.13.1+freethreaded-windows-x86_64-none <download available=""> cpython-3.13.1-windows-x86_64-none <download available=""> cpython-3.12.8-windows-x86_64-none <download available=""> ...
Install the latest version:
# uv python install Installed Python 3.13.1 in 5.89s + cpython-3.13.1-windows-x86_64-none
View installation results: The installed version will display the installation path.
# uv python list cpython-3.13.1-windows-x86_64-none C:\Users\meebo\AppData\Roaming\uv\python\cpython-3.13.1-windows-x86_64-none\python.exe ...
Get the Python installation path:
# uv python dir C:\Users\meebo\AppData\Roaming\uv\python
Install the specified version:
# uv python install 3.10 Installed Python 3.10.16 in 9.78s + cpython-3.10.16-windows-x86_64-none
Uninstall Python version (requires specified version):
# uv python uninstall 3.10 Searching for Python versions matching: Python 3.10 Uninstalled Python 3.10.16 in 1.52s - cpython-3.10.16-windows-x86_64-none
View all versions (including all revisions): uv python list --all-versions
Install multiple versions: uv python install 3.10 3.11
Uninstall multiple versions: uv python uninstall 3.10 3.11
Use uv instead of python/pip tools
The Python environment managed by uv cannot be executed directly with the python
command, but must be executed through the uv run
command. For example:
# cat .\show_version.py import sys print(sys.version)
Execution:
# uv run .\show_version.py 3.13.1 (main, Dec 19 2024, 14:38:48) [MSC v.1942 64 bit (AMD64)]
Specify Python version to execute: uv run --python 3.10 .show_version.py
Execute from standard input: echo 'print("hello world!")' | uv run -
View installed Python version: uv python list --only-installed
Set default Python version (current directory only): uv python pin 3.10
(create .python-version
file)
Specify the packages required for execution
If the program requires additional packages, such as cowsay
:
# cat .\cow.py from cowsay import cow cow('hello, world')
Specify the package using the --with
option:
# uv run --with cowsay .\cow.py Installed 1 package in 13ms ...
Clear cached virtual environments: uv cache clean
Manage virtual environments
Create a virtual environment: uv venv --python 3.10
(create .venv
directory) or specify the directory name: uv venv myenv
Use the specified virtual environment: uv run --python myenv .show_version.py
Delete virtual environment: Delete virtual environment directory
Management Pack
Use the uv pip
command to manage packages, which is compatible with the pip
command.
Installation package: uv pip install cowsay
View package dependencies: uv pip tree
Uninstall package: uv pip uninstall rich
(Dependent packages no longer needed will not be automatically deleted)
Use uv to manage Python projects
uv provides two project management methods: single file project and folder project.
Single file project
Initialize single file project: uv init --script cow3.py --python 3.13
(add metadata in cow3.py
file)
Add package: uv add --script cow3.py cowsay rich
(modify cow3.py
file metadata)
Remove package: uv remove --script cow3.py rich
(modify cow3.py
file metadata)
Folder Items
Initialize the folder project: uv init myproject
(Create the project directory, including .gitignore
, .python-version
, hello.py
, pyproject.toml
, README.md
)
Execution project: uv run hello.py
(Create .venv
virtual environment)
Add package: uv add cowsay rich
(modify pyproject.toml
file)
Update package: uv lock --upgrade-package cowsay
or uv lock --upgrade
Remove package: uv remove cowsay
Synchronize project environment with uv.lock
files: uv sync
View project package dependencies: uv tree
Use the tool commands provided by the package
Directly execute the package command: uvx cowsay -t 'hello, uv'
or uv tool run cowsay -t 'hello, uv'
Specify package execution command: uvx --from httpie http -p=b GET https://flagtech.github.io/flag.txt
Install package command to the system: uv tool install httpie
Update package command: uv tool upgrade httpie
Uninstall package command: uv tool uninstall httpie
uv provides an efficient and convenient Python environment management solution, significantly improving development efficiency. Through the introduction of this article, I believe you have mastered the basic usage of uv and can better manage your Python projects and environments.
The above is the detailed content of Use uv to manage Python environments. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











Python is suitable for data science, web development and automation tasks, while C is suitable for system programming, game development and embedded systems. Python is known for its simplicity and powerful ecosystem, while C is known for its high performance and underlying control capabilities.

You can learn basic programming concepts and skills of Python within 2 hours. 1. Learn variables and data types, 2. Master control flow (conditional statements and loops), 3. Understand the definition and use of functions, 4. Quickly get started with Python programming through simple examples and code snippets.

Python excels in gaming and GUI development. 1) Game development uses Pygame, providing drawing, audio and other functions, which are suitable for creating 2D games. 2) GUI development can choose Tkinter or PyQt. Tkinter is simple and easy to use, PyQt has rich functions and is suitable for professional development.

You can learn the basics of Python within two hours. 1. Learn variables and data types, 2. Master control structures such as if statements and loops, 3. Understand the definition and use of functions. These will help you start writing simple Python programs.

Python is easier to learn and use, while C is more powerful but complex. 1. Python syntax is concise and suitable for beginners. Dynamic typing and automatic memory management make it easy to use, but may cause runtime errors. 2.C provides low-level control and advanced features, suitable for high-performance applications, but has a high learning threshold and requires manual memory and type safety management.

To maximize the efficiency of learning Python in a limited time, you can use Python's datetime, time, and schedule modules. 1. The datetime module is used to record and plan learning time. 2. The time module helps to set study and rest time. 3. The schedule module automatically arranges weekly learning tasks.

Python is widely used in the fields of web development, data science, machine learning, automation and scripting. 1) In web development, Django and Flask frameworks simplify the development process. 2) In the fields of data science and machine learning, NumPy, Pandas, Scikit-learn and TensorFlow libraries provide strong support. 3) In terms of automation and scripting, Python is suitable for tasks such as automated testing and system management.

Python excels in automation, scripting, and task management. 1) Automation: File backup is realized through standard libraries such as os and shutil. 2) Script writing: Use the psutil library to monitor system resources. 3) Task management: Use the schedule library to schedule tasks. Python's ease of use and rich library support makes it the preferred tool in these areas.
