Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| gf_informatik:daten:processing [2023-05-31 12:12] – [Aufgabe 4] hof | gf_informatik:daten:processing [2025-06-06 08:29] (aktuell) – [Aufgabe 6] hof | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| # Data Processing in Python | # Data Processing in Python | ||
| + | < | ||
| {{ : | {{ : | ||
| Zeile 6: | Zeile 7: | ||
| Wieviel ist viel? 1000? | Wieviel ist viel? 1000? | ||
| + | |||
| #### Aufgabe 1 | #### Aufgabe 1 | ||
| Zeile 25: | Zeile 27: | ||
| * Wenn Dateien gelesen oder geschrieben werden, müssen sie beim Betriebssystem reserviert werden. Mit `with` wird sichergestellt, | * Wenn Dateien gelesen oder geschrieben werden, müssen sie beim Betriebssystem reserviert werden. Mit `with` wird sichergestellt, | ||
| - | * Die Datei (hier ' | + | * Die Datei (hier ' |
| + | * Der Typ einer Datei wird über die Dateierweiterung (`.txt`, en. _extension_) bestimmt. Windows versteckt die Endungen standardmässig, | ||
| * `' | * `' | ||
| #### Aufgabe 2 | #### Aufgabe 2 | ||
| - | Lade die Datei [[https:// | + | Lade die Datei [[https:// |
| - | . | + | |
| + | ##### Encoding | ||
| + | Achtung, Mac-Users: Die Datei verwendet die Latin1-Codierung, | ||
| + | |||
| + | <code python> | ||
| + | # Specify text encoding when opening a file. | ||
| + | with open(' | ||
| + | </ | ||
| ## Dateien schreiben | ## Dateien schreiben | ||
| Schreiben funktioniert ganz ähnlich wie lesen, aber als zweites Argument muss `' | Schreiben funktioniert ganz ähnlich wie lesen, aber als zweites Argument muss `' | ||
| Zeile 64: | Zeile 75: | ||
| * `split(char)` erzeugt aus einem String eine Liste von Werten, die mit dem angegebenen Trennzeichen abgetrennt sind: | * `split(char)` erzeugt aus einem String eine Liste von Werten, die mit dem angegebenen Trennzeichen abgetrennt sind: | ||
| * `" | * `" | ||
| - | * `strip()` gibt den selben String zurück, aber ohne Leerschläge an beiden Enden. | + | * `strip()` gibt den selben String zurück, aber ohne Leerschläge an beiden Enden: |
| + | * `" | ||
| + | |||
| #### Aufgabe 4 | #### Aufgabe 4 | ||
| Zeile 74: | Zeile 88: | ||
| <nodisp 1> | <nodisp 1> | ||
| ++++Lösung: | ++++Lösung: | ||
| - | <code python> | + | <html>< |
| - | with open(' | + | |
| be = 0 | be = 0 | ||
| tg = 0 | tg = 0 | ||
| Zeile 87: | Zeile 100: | ||
| print(" | print(" | ||
| print(" | print(" | ||
| - | </code> | + | </bottom-editor></ |
| ++++ | ++++ | ||
| </ | </ | ||
| Zeile 100: | Zeile 114: | ||
| Allerdings funktioniert das nur, wenn der String auch wirklich eine Zahl darstellt. Sonst wird eine *Exception* geworfen; wir können sie mit `try...except` auffangen: | Allerdings funktioniert das nur, wenn der String auch wirklich eine Zahl darstellt. Sonst wird eine *Exception* geworfen; wir können sie mit `try...except` auffangen: | ||
| - | <code python> | + | <html>< |
| try: | try: | ||
| my_number = int(" | my_number = int(" | ||
| Zeile 106: | Zeile 120: | ||
| except ValueError: | except ValueError: | ||
| pass # executed if an exception was thrown | pass # executed if an exception was thrown | ||
| - | </code> | + | </bottom-editor></ |
| #### Aufgabe 5 | #### Aufgabe 5 | ||
| Zeile 125: | Zeile 139: | ||
| ++++ | ++++ | ||
| - | < | + | < |
| ++++Code:| | ++++Code:| | ||
| - | <code python> | + | <html>< |
| def find_smallest_population(): | def find_smallest_population(): | ||
| with open(' | with open(' | ||
| Zeile 147: | Zeile 161: | ||
| print(" | print(" | ||
| + | </ | ||
| + | ++++ | ||
| + | </ | ||
| + | <nodisp 1> | ||
| + | ++++Code:| | ||
| + | < | ||
| def find_largest_area(): | def find_largest_area(): | ||
| with open(' | with open(' | ||
| Zeile 167: | Zeile 187: | ||
| print(" | print(" | ||
| - | </code> | + | </bottom-editor></ |
| ++++ | ++++ | ||
| </ | </ | ||
| Zeile 177: | Zeile 197: | ||
| * Wieviele Gemeinden hat der Kanton Glarus? | * Wieviele Gemeinden hat der Kanton Glarus? | ||
| - | < | + | < |
| ++++Code:| | ++++Code:| | ||
| - | <code python> | + | <html>< |
| def summarize_canton(canton): | def summarize_canton(canton): | ||
| with open(' | with open(' | ||
| Zeile 233: | Zeile 253: | ||
| summarize_canton(' | summarize_canton(' | ||
| summarize_canton(' | summarize_canton(' | ||
| - | </code> | + | </bottom-editor></ |
| ++++ | ++++ | ||
| </ | </ | ||