


Die Entwicklung von Python ist eng mit Fortschritten in der Paketverwaltung verbunden, von manuellen Installationen bis hin zu Tools wie Pip und Poetry. Da Projekte jedoch immer komplexer werden, sind herkömmliche Tools oft nicht mehr so schnell und effizient.
uv ist ein hochmodernes Python-Paket und ein mit Rust erstellter Projektmanager, der das ändern soll. Durch die Kombination der Funktionalität von Tools wie Pip, Poetry und Virtualenv rationalisiert UV Aufgaben wie Abhängigkeitsmanagement, Skriptausführung und Projekterstellung – und das alles mit außergewöhnlicher Leistung. Seine nahtlose Kompatibilität mit Pip-Befehlen erfordert keine zusätzliche Lernkurve.
In diesem Tutorial erfahren Sie, wie Sie UV installieren und seine Funktionen optimal nutzen. Von der Einrichtung eines Projekts und der Verwaltung von Abhängigkeiten bis hin zur Ausführung von Skripten und der Nutzung der erweiterten Pip-Schnittstelle.
Erste Schritte
Inhaltsverzeichnis
- Pip-Einschränkungen
- Was ist UV?
- Hauptmerkmale von UV
- Benchmarks
- Installation
- Erstellen virtueller Umgebungen
- Erstellen einer Flaschen-App mit UV
- Python mit UV installieren
- Werkzeuge
- Spickzettel
- Aktuelle Einschränkungen
Pip-Beschränkungen
Pip ist ein weit verbreitetes, in Python geschriebenes Paketverwaltungssystem, das für die Installation und Verwaltung von Softwarepaketen entwickelt wurde. Trotz seiner Beliebtheit wird es jedoch oft als eines der langsamsten Paketverwaltungstools für Python kritisiert. Beschwerden über „langsame Pip-Installation“ kommen so häufig vor, dass sie häufig in Entwicklerforen und -threads auftauchen.
Ein wesentlicher Nachteil von pip ist seine Anfälligkeit für Abhängigkeitsgerüche, die auftreten, wenn Abhängigkeitskonfigurationsdateien schlecht geschrieben oder verwaltet werden. Diese Probleme können schwerwiegende Folgen haben, wie z. B. eine erhöhte Komplexität und eine verringerte Wartbarkeit von Projekten.
Eine weitere Einschränkung von pip ist die Unfähigkeit, Python-Code bei der Wiederherstellung von Laufzeitumgebungen konsistent genau abzugleichen. Diese Nichtübereinstimmung kann zu einer niedrigen Erfolgsquote bei der Abhängigkeitsinferenz führen, was es schwierig macht, Projektumgebungen zuverlässig neu zu erstellen.
Was ist UV?
uv ist ein moderner, leistungsstarker Python-Paketmanager, der von den Machern von Ruff entwickelt und in Rust geschrieben wurde. Es wurde als Ersatz für Pip und Pip-Tools entwickelt und bietet außergewöhnliche Geschwindigkeit und Kompatibilität mit vorhandenen Tools.
Zu den wichtigsten Funktionen gehören die Unterstützung bearbeitbarer Installationen, Git- und URL-Abhängigkeiten, Einschränkungsdateien, benutzerdefinierte Indizes und mehr. Die standardkonformen virtuellen Umgebungen von uv funktionieren nahtlos mit anderen Tools und vermeiden so Bindungen oder Anpassungen. Es ist plattformübergreifend, unterstützt Linux, Windows und macOS und wurde ausführlich anhand des PyPI-Index getestet.
UV konzentriert sich auf Einfachheit, Geschwindigkeit und Zuverlässigkeit und behebt häufige Probleme von Entwicklern wie langsame Installationen, Versionskonflikte und komplexes Abhängigkeitsmanagement und bietet eine intuitive Lösung für die moderne Python-Entwicklung.
Hauptmerkmale von UV
- ⚖️ Drop-in-Ersatz: Ersetzt nahtlos Pip, Pip-Tools, Virtualenv und andere Tools mit voller Kompatibilität.
- ⚡ Höchste Geschwindigkeit: 10–100x schneller als herkömmliche Tools wie Pip, Pip-Compile und Pip-Sync.
- ? Speicherplatzeffizient: Nutzt einen globalen Cache für die Abhängigkeitsdeduplizierung und spart so Speicherplatz.
- ? Flexible Installation: Installierbar über Curl, Pip oder Pipx, ohne dass Rust oder Python erforderlich sind.
- ? Gründlich getestet: Bewährte Leistung im großen Maßstab mit den 10.000 besten PyPI-Paketen.
- ?️ Plattformübergreifende Unterstützung: Vollständig kompatibel mit macOS, Linux und Windows.
- ? Erweitertes Abhängigkeitsmanagement: Zu den Funktionen gehören das Überschreiben von Abhängigkeitsversionen, alternative Lösungsstrategien und ein Konfliktverfolgungslöser.
- ⁉️ Klare Fehlermeldungen: Erstklassige Fehlerbehandlung stellt sicher, dass Entwickler Konflikte effizient lösen können.
- ? Moderne Python-Funktionen: Unterstützt bearbeitbare Installationen, Git-Abhängigkeiten, direkte URLs, lokale Abhängigkeiten, Einschränkungsdateien und mehr.
- ? Unified Tooling: Kombiniert die Funktionalität von Tools wie Pip, Pipx, Poetry, Pyenv, Twine und mehr in einer einzigen Lösung.
- ?️ Anwendungs- und Skriptverwaltung: Installiert und verwaltet Python-Versionen, führt Skripte mit Inline-Abhängigkeitsmetadaten aus und unterstützt umfassende Projektworkflows.
- ?️ Universelle Sperrdatei: Vereinfacht das Projektmanagement mit konsistenten und portablen Sperrdateien.
- ? Arbeitsbereichsunterstützung: Bewältigt skalierbare Projekte mit Arbeitsbereichsverwaltung im Cargo-Stil.
Benchmarks
Quelle: https://blog.kusho.ai/uv-pip-killer-or-yet-another-package-manager
Auflösen (links) und Installieren (rechts) von Abhängigkeiten mithilfe eines Warm-Cache, Simulieren des Prozesses der Neuerstellung einer virtuellen Umgebung oder des Hinzufügens einer neuen Abhängigkeit zu einem vorhandenen Projekt.
Quelle: https://blog.kusho.ai/uv-pip-killer-or-yet-another-package-manager
Das Auflösen (links) und Installieren (rechts) von Abhängigkeiten mit einem kalten Cache simuliert die Ausführung in einer sauberen Umgebung. Ohne Caching ist uv 8–10x schneller als pip und pip-tools und mit einem warmen Cache erreicht es 80–115x schnellere Geschwindigkeiten.
Quelle: https://blog.kusho.ai/uv-pip-killer-or-yet-another-package-manager
Erstellen einer virtuellen Umgebung mit (links) und ohne (rechts) Seed-Pakete wie Pip und Setuptools. uv ist etwa 80x schneller als python -m venv und 7x schneller als virtualenv, und das alles unabhängig von Python.
Installation
Die Installation von UV ist schnell und unkompliziert. Sie können sich für eigenständige Installationsprogramme entscheiden oder es direkt von PyPI aus installieren.
# On macOS and Linux. curl -LsSf https://astral.sh/uv/install.sh | sh # On Windows. powershell -c "irm https://astral.sh/uv/install.ps1 | iex" # With pip. pip install uv # With pipx. pipx install uv # With Homebrew. brew install uv # With Pacman. pacman -S uv
Bevor wir UV verwenden, müssen wir den UV-Pfad zu Umgebungsvariablen hinzufügen.
Ändern Sie für Linux und macOS die Umgebungsvariable PATH mit dem folgenden Befehl im Terminal:
export PATH="$HOME/.local/bin:$PATH"
Um unter Windows ein Verzeichnis zur PATH-Umgebungsvariablen für Benutzer und System hinzuzufügen, suchen Sie im Suchfeld nach Umgebungsvariablen. Wählen Sie unter Benutzervariablen/Systemvariablen die Pfadvariable aus, klicken Sie auf Bearbeiten, dann auf Neu und fügen Sie den gewünschten Pfad hinzu.
%USERPROFILE%\.local\bin
Führen Sie nach der Installation den Befehl uv im Terminal aus, um zu überprüfen, ob die Installation korrekt durchgeführt wurde.
Erstellen virtueller Umgebungen
Das Erstellen einer virtuellen Umgebung mit UV ist einfach und unkompliziert. Verwenden Sie den folgenden Befehl zusammen mit dem gewünschten Umgebungsnamen, um ihn zu erstellen.
uv venv
- Führen Sie den folgenden Befehl aus, um die virtuelle Umgebung zu aktivieren.
# On macOS and Linux. source .venv/bin/activate # On Windows. .venv\Scripts\activate
Pakete installieren
Die Installation von Paketen in der virtuellen Umgebung erfolgt nach einem vertrauten Prozess. Die verschiedenen Installationsmethoden sind unten aufgeführt.
uv pip install flask # Install Flask. uv pip install -r requirements.txt # Install from a requirements.txt file. uv pip install -e . # Install current project in editable mode. uv pip install "package @ ." # Install current project from disk uv pip install "flask[dotenv]" # Install Flask with "dotenv" extra.
Um die gesperrten Abhängigkeiten mit der virtuellen Umgebung zu synchronisieren, verwenden Sie den folgenden Befehl:
uv pip sync requirements.txt # Install dependencies from a requirements.txt file.
uv unterstützt eine Vielzahl von Befehlszeilenargumenten, die denen bestehender Tools ähneln, einschließlich -r Anforderungen.txt, -c Einschränkungen.txt, -e ., --index-url und mehr.
Erstellen einer Flaschen-App mit UV
Lassen Sie uns einige projektbezogene Befehle mit UV erkunden. Beginnen Sie mit der Initialisierung eines Python-Projekts mit dem Namen „sample-project“.
# On macOS and Linux. curl -LsSf https://astral.sh/uv/install.sh | sh # On Windows. powershell -c "irm https://astral.sh/uv/install.ps1 | iex" # With pip. pip install uv # With pipx. pipx install uv # With Homebrew. brew install uv # With Pacman. pacman -S uv
Navigieren Sie zum Beispielprojektverzeichnis. uv initialisiert das Projekt mit wichtigen Dateien wie app.py, require.txt, README.md und mehr.
Verwenden Sie den Befehl „run“, um die Beispiel-Python-Datei auszuführen. Dieser Prozess erstellt zunächst den Ordner der virtuellen Umgebung und führt dann die Python-Datei aus.
export PATH="$HOME/.local/bin:$PATH"
Kolben installieren
Fügen Sie Flask zu Ihren Projektabhängigkeiten hinzu.
%USERPROFILE%\.local\bin
Erstellen Sie die Flask-Anwendung
Erstellen Sie ein neues und schreiben Sie den folgenden Code.
uv venv
Führen Sie die App aus
Verwenden Sie den Befehl uv run, um die Anwendung auszuführen.
# On macOS and Linux. source .venv/bin/activate # On Windows. .venv\Scripts\activate
Öffnen Sie einen Browser oder verwenden Sie ein Tool wie Curl oder Postman, um eine GET-Anfrage zu senden.
Python mit UV installieren
Die Verwendung von uv zur Installation von Python ist optional, da es nahtlos mit vorhandenen Python-Installationen funktioniert. Wenn Sie jedoch die Installation von Python über uv bevorzugen, kann dies mit einem einfachen Befehl erfolgen:
uv pip install flask # Install Flask. uv pip install -r requirements.txt # Install from a requirements.txt file. uv pip install -e . # Install current project in editable mode. uv pip install "package @ ." # Install current project from disk uv pip install "flask[dotenv]" # Install Flask with "dotenv" extra.
Dieser Ansatz ist im Vergleich zu herkömmlichen Methoden oft bequemer und zuverlässiger, da die Verwaltung von Repositorys oder das Herunterladen von Installationsprogrammen entfällt. Führen Sie einfach den Befehl aus und das Setup ist einsatzbereit.
Werkzeuge
CLI-Tools können mit dem uv-Befehl installiert und verwendet werden. Beispielsweise können die Huggingface_hub-Tools installiert werden, um das Ziehen und Verschieben von Dateien in Hugging Face-Repositorys zu ermöglichen.
- Verwenden Sie den folgenden Befehl, um Huggingface_hub mithilfe von UV zu installieren.
uv pip sync requirements.txt # Install dependencies from a requirements.txt file.
- Der folgende Befehl zeigt alle installierten Tools an:
uv init sample-project
Spickzettel
Hier ist ein kurzer Spickzettel für die Durchführung allgemeiner Vorgänge mit UV:
Aktuelle Einschränkungen
Obwohl uv eine schnelle und effiziente Lösung für die Python-Paketverwaltung bietet, weist es einige Einschränkungen auf:
- Unvollständige Pip-Kompatibilität: Obwohl uv einen wesentlichen Teil der Pip-Schnittstelle unterstützt, deckt es noch nicht den gesamten Funktionsumfang ab. Einige dieser Unterschiede sind bewusste Designentscheidungen, während andere darauf zurückzuführen sind, dass sich UV noch in einem frühen Entwicklungsstadium befindet. Einen detaillierten Vergleich finden Sie im Pip-Kompatibilitätsleitfaden.
- Plattformspezifische Anforderungen.txt: Wie pip-compile generiert uv plattformspezifische Anforderungen.txt-Dateien. Dies steht im Gegensatz zu Tools wie Poetry und PDM, die plattformunabhängige poet.lock- und pdm.lock-Dateien erstellen. Daher kann es sein, dass die „requirements.txt“-Dateien von uv nicht über verschiedene Plattformen und Python-Versionen hinweg portierbar sind.
Vielen Dank für das Lesen dieses Artikels!!
Vielen Dank an Gowri M Bhatt für die Überprüfung des Inhalts.
Wenn Ihnen dieser Artikel gefallen hat, klicken Sie bitte auf den Herz-Button ♥ und teilen Sie ihn, damit andere ihn finden können!
Ressourcen
uv – Ein extrem schneller Python-Paket- und Projektmanager, geschrieben in Rust | docs.astral.sh
Das obige ist der detaillierte Inhalt vonWir stellen vor: uv: Python-Paketmanager der nächsten Generation. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Lösung für Erlaubnisprobleme beim Betrachten der Python -Version in Linux Terminal Wenn Sie versuchen, die Python -Version in Linux Terminal anzuzeigen, geben Sie Python ein ...

In diesem Artikel wird erklärt, wie man schöne Suppe, eine Python -Bibliothek, verwendet, um HTML zu analysieren. Es beschreibt gemeinsame Methoden wie find (), find_all (), select () und get_text () für die Datenextraktion, die Behandlung verschiedener HTML -Strukturen und -Anternativen (SEL)

Das Statistikmodul von Python bietet leistungsstarke Datenstatistikanalysefunktionen, mit denen wir die allgemeinen Merkmale von Daten wie Biostatistik und Geschäftsanalyse schnell verstehen können. Anstatt Datenpunkte nacheinander zu betrachten, schauen Sie sich nur Statistiken wie Mittelwert oder Varianz an, um Trends und Merkmale in den ursprünglichen Daten zu ermitteln, die möglicherweise ignoriert werden, und vergleichen Sie große Datensätze einfacher und effektiv. In diesem Tutorial wird erläutert, wie der Mittelwert berechnet und den Grad der Dispersion des Datensatzes gemessen wird. Sofern nicht anders angegeben, unterstützen alle Funktionen in diesem Modul die Berechnung der Mittelwert () -Funktion, anstatt einfach den Durchschnitt zu summieren. Es können auch schwimmende Punktzahlen verwendet werden. zufällig importieren Statistiken importieren Aus Fracti

Dieser Artikel vergleicht TensorFlow und Pytorch für Deep Learning. Es beschreibt die beteiligten Schritte: Datenvorbereitung, Modellbildung, Schulung, Bewertung und Bereitstellung. Wichtige Unterschiede zwischen den Frameworks, insbesondere bezüglich des rechnerischen Graps

In dem Artikel werden beliebte Python-Bibliotheken wie Numpy, Pandas, Matplotlib, Scikit-Learn, TensorFlow, Django, Flask und Anfragen erörtert, die ihre Verwendung in wissenschaftlichen Computing, Datenanalyse, Visualisierung, maschinellem Lernen, Webentwicklung und h beschreiben

Dieser Artikel führt die Python-Entwickler in den Bauen von CLIS-Zeilen-Schnittstellen (CLIS). Es werden mit Bibliotheken wie Typer, Click und ArgParse beschrieben, die Eingabe-/Ausgabemedelung betonen und benutzerfreundliche Designmuster für eine verbesserte CLI-Usabilität fördern.

Bei der Verwendung von Pythons Pandas -Bibliothek ist das Kopieren von ganzen Spalten zwischen zwei Datenrahmen mit unterschiedlichen Strukturen ein häufiges Problem. Angenommen, wir haben zwei Daten ...

Der Artikel erörtert die Rolle virtueller Umgebungen in Python und konzentriert sich auf die Verwaltung von Projektabhängigkeiten und die Vermeidung von Konflikten. Es beschreibt ihre Erstellung, Aktivierung und Vorteile bei der Verbesserung des Projektmanagements und zur Verringerung der Abhängigkeitsprobleme.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung