Heim  >  Artikel  >  Backend-Entwicklung  >  Beherrschen Sie das Python-Projektmanagement mit uv PartEs ist Zeit, Poesie hinter sich zu lassen

Beherrschen Sie das Python-Projektmanagement mit uv PartEs ist Zeit, Poesie hinter sich zu lassen

Barbara Streisand
Barbara StreisandOriginal
2024-09-30 06:16:02868Durchsuche

Mastering Python Project Management with uv PartIt

Sind Sie es leid, mit mehreren Tools wie Pip, Virtualenv, Conda, Poetry und Pyenv zu jonglieren, nur um Ihre Python-Umgebungen und Abhängigkeiten unter Kontrolle zu halten? Du bist nicht allein! Das Verwalten von Python-Projekten kann Kopfschmerzen bereiten, insbesondere angesichts der vielen verschiedenen Paketmanager und Tools, mit denen Sie sich auseinandersetzen müssen.

Geben Sie uv ein – die Universal Virtualenv. Betrachten Sie es als einen One-Stop-Shop-Paketmanager, der Ihren Python-Entwicklungsprozess rationalisieren und beschleunigen soll.


Eine kleine Hintergrundgeschichte

uv lässt sich von Rye, einem weiteren modernen Verpackungsmanager, inspirieren, um die besten Funktionen von Pip, Pip-Tools, Pyenv, Virtualenv und Poetry zu vereinen. UV wurde mit Rust entwickelt und ist nicht nur schnell, sondern auch äußerst effizient und vereinfacht alles von der Verwaltung von Abhängigkeiten bis zur Erstellung virtueller Umgebungen.

Das Ziel von UV

Kurz gesagt geht es bei UV um Konsolidierung. Warum zwischen mehreren Tools wechseln, wenn Sie ein einheitliches Erlebnis haben können? Ziel ist es, die Reibung bei der Python-Entwicklung zu beseitigen und Ihnen eine konsistentere und schnellere Möglichkeit zur Verwaltung Ihrer Projekte zu bieten. Und es ist auch noch rasend schnell! Das öffnet neue Türen, für dynamisches Management


1. Portabler Code mit Inline-Skript-Metadaten

Reden wir über Abhängigkeiten

Eine der aufregendsten Funktionen von uv ist die Möglichkeit, Abhängigkeiten direkt in Ihrem Python-Skript hinzuzufügen. Stellen Sie sich vor, Sie haben ein einfaches Skript wie dieses:

# app.py
import requests
from rich.pretty import pprint

response = requests.get("https://peps.python.org/api/peps.json")
data = response.json()
pprint([(k, v["title"]) for k, v in data.items()][:10])

Das Ausführen dieses Skripts bedeutet normalerweise das Einrichten einer virtuellen Umgebung und das manuelle Installieren von Abhängigkeiten. Mit uv können Sie alle Ihre Abhängigkeiten direkt in das Skript einbetten, wodurch es eigenständig und gemeinsam nutzbar:
wird

$ uv add --script app.py 'requests322b02e8232b99b203150752b5d38186=1.10.0' "git+https://github.com/astral-sh/ruff"

No more waiting around for slow installations—uv gets the job done fast and effectively.


6. Manage CLI Tools Globally and Easily

From black to ruff, Get Your Tools Hassle-Free

Whether you're linting code or formatting files, uv makes installing CLI tools easy:

  • Globally:

    $ uv tool install ruff
    
  • Locally within a Project:

    $ uv add ruff
    
  • Run Ephemeral Commands without Installing Globally:

    $ uvx black my_code.py
    

Say goodbye to package conflicts and environment pollution—just run your tools whenever and wherever you need them.


If you're looking to supercharge your Python development and want to stop wrestling with multiple tools, uv is your answer. With its streamlined commands, reproducible environments, and efficient package management, uv makes Python development a pleasure rather than a chore.

Ready to take uv for a spin? ? Start today and experience a better way to manage your Python projects.


Stay tuned for Part 2, where we'll dive deeper into advanced features like leveraging pyproject.toml, handling global vs. local tool installations, and how uv can be your best friend when managing complex environments.

Happy coding! ?✨

For more details and full documentation, check out uv documentation.

Das obige ist der detaillierte Inhalt vonBeherrschen Sie das Python-Projektmanagement mit uv PartEs ist Zeit, Poesie hinter sich zu lassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn