Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m122:learningunits:lu08:aufgaben:dateien [2024/12/02 09:30] – msuter | modul:m122:learningunits:lu08:aufgaben:dateien [2024/12/10 09:27] (aktuell) – [Beispielcode für den Einstieg] msuter | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== LU08.A01: Arbeiten mit Dateien und Verzeichnissen ====== | ====== LU08.A01: Arbeiten mit Dateien und Verzeichnissen ====== | ||
| + | <WRAP center round todo 60%> | ||
| + | Verwende das '' | ||
| + | </ | ||
| + | |||
| - | **Ziel**: Verwenden Sie das `subprocess`-Modul in Python, um mehrere Bash-Befehle auszuführen und die Ergebnisse zu verarbeiten.  | + | ===== Aufgabe ===== | 
| - | --- | + | Erstelle ein Python-Skript, das folgende Schritte ausführt: | 
| - | #### Aufgabe | + |   -  **Erstellen eines neuen Verzeichnisses**: | 
| + |     * Das Skript soll ein neues Verzeichnis mit dem Namen '' | ||
| + |     * Überprüfe, | ||
| + |   - **Erstellen von Dateien im neuen Verzeichnis**: | ||
| + |     * Erstelle drei leere Dateien ('' | ||
| + |   - **Auflisten der Dateien**: | ||
| + |     * Liste den Inhalt des Verzeichnisses '' | ||
| + |   - **Dateigröße anzeigen**: | ||
| + |     * Zeige die Grösse der Dateien in diesem Verzeichnis mit dem Befehl '' | ||
| + |   - **Zusatz (optional)**: | ||
| + |     * Lösche eine der Dateien ('' | ||
| - | Erstellen Sie ein Python-Skript, | + | ===== Vorgehen ===== | 
| - | 1. **Erstellen eines neuen Verzeichnisses**: | + |   - Erstelle einen Ordner '' | 
| - |     | + |   - Erzeuge  | 
| - |     | + |   - Aktiviere  | 
| + |   - Erstelle eine Datei '' | ||
| + | ===== Beispielcode für den Einstieg ===== | ||
| - | 2. **Erstellen von Dateien im neuen Verzeichnis**: | ||
| - |    - Erstellen Sie drei leere Dateien (`file1.txt`, | ||
| - | 3. **Auflisten  | + | Hier ist der Aufbau des Skripts als Orientierungshilfe: | 
| - | - Listen Sie den Inhalt des Verzeichnisses `python_bash_test` mit dem Befehl `ls` auf und geben Sie die Ausgabe in der Konsole aus. | + | |
| - | 4. **Dateigröße anzeigen**: | + | < | 
| - | - Zeigen Sie die Größe der Dateien in diesem Verzeichnis mit dem Befehl `du -h` an. | + | |
| - | + | ||
| - | 5. **Zusatz (optional)**: | + | |
| - | - Löschen Sie eine der Dateien (`file3.txt`) und geben Sie anschließend die aktualisierte Liste der Dateien aus. | + | |
| - | + | ||
| - | --- | + | |
| - | + | ||
| - | #### Beispielcode für den Einstieg | + | |
| - | + | ||
| - | Hier ist der Anfang des Skripts als Orientierungshilfe: | + | |
| - | + | ||
| - | ```python | + | |
| import subprocess | import subprocess | ||
| - | # 1. Verzeichnis erstellen | ||
| def create_directory(directory_name): | def create_directory(directory_name): | ||
| - |      | + |     "" | 
| - | if result.returncode == 0: | + |      | 
| - |         print(f"Verzeichnis ' | + | |
| - |      | + | |
| - |          | + | |
| - | # 2. Dateien erstellen | ||
| def create_files(directory_name, | def create_files(directory_name, | ||
| - |      | + |     """  | 
| - |         file_path = f"{directory_name}/ | + | pass | 
| - |         result = subprocess.run([' | + | |
| - | if result.returncode == 0: | + | |
| - |             print(f"Datei ' | + | |
| - | else: | + | |
| - |             print(f"Fehler beim Erstellen der Datei ' | + | |
| - | # Weiterer Code für Schritte  | + | # Functions for steps 3-5 | 
| - | ``` | + | |
| - | --- | + | if __name__ == ' | 
| + |     directory = ' | ||
| + |     files = [' | ||
| + | |||
| + | create_directory(directory) | ||
| + |     create_files(directory, | ||
| + | # call functions for step 3-5 | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | ===== Erwartete Ergebnisse ===== | ||
| - | #### Erwartete Ergebnisse | ||
| Beim Ausführen des Skripts sollte die Konsole folgendes ausgeben: | Beim Ausführen des Skripts sollte die Konsole folgendes ausgeben: | ||
| - | 1. **Nach Schritt 1**: | + | ==== Nach Schritt 1: ==== | 
| - | ``` | + | |
| + | < | ||
|     |     | ||
| - | ``` | + | </ | 
| + | |||
| + | ==== Nach Schritt 2: ==== | ||
| - | 2. **Nach Schritt 2**: | + | < | 
| - | ``` | + | |
|    Datei ' |    Datei ' | ||
|    Datei ' |    Datei ' | ||
|    Datei ' |    Datei ' | ||
| - | ``` | + | </ | 
| - | 3. **Nach Schritt 3 (Liste der Dateien)**: | + | ==== Nach Schritt 3 (Liste der Dateien):  | 
| - | ``` | + | |
| + | < | ||
|     |     | ||
|     |     | ||
|     |     | ||
|     |     | ||
| - | ``` | + | </ | 
| - | 4. **Nach Schritt 4 (Dateigröße)**: | + | ==== Nach Schritt 4 (Dateigröße):  | 
| - | ``` | + | |
| + | < | ||
|     |     | ||
| 0B file1.txt | 0B file1.txt | ||
| 0B file2.txt | 0B file2.txt | ||
| 0B file3.txt | 0B file3.txt | ||
| - | ``` | + | </ | 
| - | 5. **Nach Schritt 5 (Aktualisierte Liste nach Löschung)**: | + | ==== Nach Schritt 5 (Aktualisierte Liste nach Löschung):  | 
| - | ``` | + | |
| + | < | ||
|    Datei ' |    Datei ' | ||
|     |     | ||
|     |     | ||
|     |     | ||
| - | ``` | + | </ | 
| - | + | ||
| - | --- | + | |
| - | + | ||
| - | #### Bewertungskriterien | + | |
| - | - **Korrektheit**: | + | ---- | 
| - | - **Struktur**: Der Code ist modular und klar strukturiert (Verwendung von Funktionen). | + | {{tag> | 
| - | - **Fehlerbehandlung**: Rückgabecodes und Fehler werden überprüft und ordnungsgemäß verarbeitet. | + | [[https:// |