Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
modul:m122:learningunits:lu08:linux_python [2024/12/10 07:43] – angelegt msuter | modul:m122:learningunits:lu08:linux_python [2024/12/10 09:16] (aktuell) – [Skript ausführen] msuter | ||
---|---|---|---|
Zeile 2: | Zeile 2: | ||
===== Pfade in WSL ===== | ===== Pfade in WSL ===== | ||
+ | Linux und Windows unterscheiden sich erheblich in der Art und Weise, wie sie mit Ordnerpfaden umgehen. Hier sind die wesentlichen Unterschiede: | ||
+ | |||
+ | ==== Pfad-Trennzeichen ==== | ||
+ | |||
+ | * **Linux:** Verwendet den Schrägstrich ''/'' | ||
+ | - Beispiel: ''/ | ||
+ | * **Windows: | ||
+ | - Beispiel: '' | ||
+ | |||
+ | ==== Gross- und Kleinschreibung ==== | ||
+ | |||
+ | * **Linux:** Unterscheidet zwischen Gros- und Kleinschreibung in Dateinamen und Ordnern. Das bedeutet, dass '' | ||
+ | * **Windows: | ||
+ | |||
+ | ==== Pfadstruktur ==== | ||
+ | |||
+ | * **Linux: | ||
+ | * Es gibt ein einheitliches Wurzelverzeichnis ''/'' | ||
+ | * Alle Laufwerke und Geräte werden unterhalb von ''/'' | ||
+ | * Das Dateisystem folgt einer hierarchischen Struktur mit standardisierten Verzeichnissen wie ''/ | ||
+ | * **Windows: | ||
+ | * Jeder Laufwerksbuchstabe (z. B. '' | ||
+ | * Die Struktur ist nicht einheitlich und hängt von der Konfiguration und Installation ab. | ||
+ | * Benutzerverzeichnisse befinden sich oft unterhalb von '' | ||
+ | |||
+ | ==== Absoluter vs. relativer Pfad ==== | ||
+ | * **Linux:** Ein absoluter Pfad beginnt immer mit ''/'', | ||
+ | * **Windows: | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | In WSL sind die Laufwerke C:, D:, ... unter ''/ | ||
+ | Um auf den Windowsordner '' | ||
+ | </ | ||
+ | |||
===== Virtual Environment ===== | ===== Virtual Environment ===== | ||
+ | In den meisten Fällen überlassen wir es unserer IDE, das Virtual Environment zu erstellen und zu aktivieren. | ||
+ | Falls wir unser Programm jedoch auf einem Server ausführen wollen, haben wir nur die Shell zur Verfügung. | ||
+ | In diesem Fall müssen wir uns selber um das '' | ||
+ | |||
+ | ===== Voraussetzung ===== | ||
+ | Für das erste Projekt in WSL muss zunächst '' | ||
+ | |||
+ | ==== Projekt erstellen ==== | ||
+ | Ich gehe davon aus, dass ich einen Ordner mit einem Python-Projekt erstellt habe. | ||
+ | Dieser kann manuell mit '' | ||
+ | Möchte ich ein Projekt von GitHub verwenden, kann ich den Ordner mit '' | ||
+ | |||
+ | < | ||
+ | git clone https:// | ||
+ | </ | ||
+ | Dieser Befehl klont das Projekt von GitHub in den Ordner '' | ||
+ | |||
+ | ==== Virtual Environment erstellen ==== | ||
+ | Wir verwenden das Modul '' | ||
+ | |||
+ | | '' | ||
+ | | '' | ||
+ | |||
+ | Mit '' | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Je nach Quelle wird der Zielordner '' | ||
+ | Für die Funktionalität macht dies keinen Unterschied. | ||
+ | In meinen Beispielen verwende ich den Ordnernamen '' | ||
+ | </ | ||
+ | |||
+ | ==== Virtual Environment aktivieren ==== | ||
+ | Bevor wir das Pythonprojekt ausführen, sollten wir das Virtual Environment aktiveren. | ||
+ | Dadurch stellen wir sicher, dass alle Änderungen an der Umgebung nur dieses Projekt betreffen und nicht systemweite Änderungen gemacht werden. | ||
+ | |||
+ | <code bash> | ||
+ | source venv/ | ||
+ | </ | ||
+ | Anhand des Eingabeprompts erkennen wir, dass das Virtual Environment aktiviert ist: | ||
+ | < | ||
+ | (venv) user@system: | ||
+ | </ | ||
+ | |||
+ | Um das Virtual Environment zu deaktivieren, | ||
+ | |||
+ | ==== Abhängigkeiten installieren ==== | ||
+ | In der Regel hat jedes Pythonprojekt eine Datei '' | ||
+ | Dies erleichtert die Installation der Pakete, wenn wir das Projekt von GitHub klonen. | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | Installiere die Pakete immer in ein aktiviertes Virtual Environment. | ||
+ | Andernfalls würden die Pakete systemweit installiert, | ||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | (venv) user@system: | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Skript ausführen ==== | ||
+ | Nun können wir unsere Pythonskripte ausführen: | ||
+ | |||
+ | <code bash> | ||
+ | (venv) user@system: | ||
+ | </ | ||
+ | |||
---- | ---- | ||
{{tag> | {{tag> | ||
[[https:// | [[https:// |