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_sca:datenverarbeitung_python [2023-05-22 07:08] – sca | gf_informatik:daten_sca:datenverarbeitung_python [2025-03-09 06:14] (aktuell) – [JSON] sca | ||
---|---|---|---|
Zeile 6: | Zeile 6: | ||
++++Lernziele| | ++++Lernziele| | ||
+ | |||
+ | Prüfungsrelevant ist alles, was in den Lektionen und Übungen behandelt wurde. Die Lernziele unten dienen als Gradmesser und sind nicht unbedingt komplett. | ||
* Was ist **Datenverarbeitung**? | * Was ist **Datenverarbeitung**? | ||
* **Vor- und Nachteile** von Datenauswertung mit Spreadsheets vs. Textfiles und Python | * **Vor- und Nachteile** von Datenauswertung mit Spreadsheets vs. Textfiles und Python | ||
- | | + | |
+ | * Unterschiede von ints und floats kennen und wissen, wann man welche verwenden soll. | ||
* Erkläre was **Textfiles** und **Binärfiles** sind, vergleiche diese und mache Beispiele. | * Erkläre was **Textfiles** und **Binärfiles** sind, vergleiche diese und mache Beispiele. | ||
* Textdateien in Python **einlesen** und **schreiben** können. | * Textdateien in Python **einlesen** und **schreiben** können. | ||
- | * Daten mit Python **verarbeiten** können, z.B.: alle Werte durchgehen, mit diesen Rechnen, in neuer Form speichern ... | + | * Daten mit Python **verarbeiten** können, z.B.: alle Werte durchgehen, mit diesen Rechnen, in neuer Form speichern. |
+ | * **Textdateiformate CSV & JSON**: | ||
+ | * Beide Einlesen und Schreiben können. | ||
+ | * Bedeutung von CSV und JSON kennen. | ||
+ | * Miteinander vergleichen: | ||
+ | * **Dictionaries: | ||
+ | * Wissen, sie sind und wie sie aufgebaut sind. | ||
+ | * Mit ihnen arbeiten können (Values auslesen, neue Einträge, löschen , alle Keys oder Werte durchgehen ...) | ||
+ | * Dictionaries mit Listen vergleichen können. | ||
+ | * Verbindung Dictionaries <-> JSON erklären. | ||
+ | * JSON-File als Dictionary einlesen, Dictionary als JSON-File speichern | ||
+ | * Situationen erkennen, in denen man **Try-Except** anwenden kann ... | ||
+ | * ... und anwenden | ||
++++ | ++++ | ||
Zeile 476: | Zeile 492: | ||
</ | </ | ||
- | Mit `fruits.keys()` und `fruits.values()` kann man *Listen* aller Keys resp. Values erstellen. Dies kann man nutzen, um alle **Key-Value-Paare** systematisch durchzugehen: | + | Mit `fruits.keys()` und `fruits.values()` kann man alle **Key-Value-Paare** systematisch durchzugehen: |
<code python> | <code python> | ||
# Option 1 | # Option 1 | ||
Zeile 485: | Zeile 501: | ||
for key,value in fruits.items(): | for key,value in fruits.items(): | ||
print(key, | print(key, | ||
+ | </ | ||
+ | Die Befehle `.keys()` und `.values()` erstellen " | ||
+ | |||
+ | <code python> | ||
+ | key_list = list(fruits.keys()) | ||
+ | value_list = list(fruits.values()) | ||
</ | </ | ||
Zeile 558: | Zeile 580: | ||
# SCHREIBEN von JSON-File | # SCHREIBEN von JSON-File | ||
- | with open(' | + | with open(' |
- | json.dump(data, | + | json.dump(data, |
</ | </ | ||
Zeile 586: | Zeile 608: | ||
1. Erstelle zuerst ein Dictionary `word_pairs`. Der Key ist immer das Deutsche Wort (z.B. ' | 1. Erstelle zuerst ein Dictionary `word_pairs`. Der Key ist immer das Deutsche Wort (z.B. ' | ||
- | 1. Gehe nun einmal das Dictionary durch (*Tipp:* In der Theorie oben wird erklärt, wie man ein Dict durchgehen kann.). Fordere die Benutzerin auf, das deutsche Wort auf englisch | + | 1. Gehe nun einmal das Dictionary durch (*Tipp:* In der Theorie oben wird erklärt, wie man ein Dict durchgehen kann.). Fordere die Benutzerin auf, das deutsche Wort auf Englisch |
1. Die Eingabe wird dann mit der korrekten Antwort verglichen ... | 1. Die Eingabe wird dann mit der korrekten Antwort verglichen ... | ||
1. ... und es wird eine entsprechende Ausgabe gemacht, z.B. " | 1. ... und es wird eine entsprechende Ausgabe gemacht, z.B. " | ||
Zeile 616: | Zeile 638: | ||
1. Nach jeder Frage soll man abbrechen können. Aktueller Stand wird dann in JSON-File geschrieben. Lösche keine Wörter aus dem File. | 1. Nach jeder Frage soll man abbrechen können. Aktueller Stand wird dann in JSON-File geschrieben. Lösche keine Wörter aus dem File. | ||
1. Soll am Anfang des Spiels den Progress zurücksetzen können, damit man alle Wörter wieder lernen kann. | 1. Soll am Anfang des Spiels den Progress zurücksetzen können, damit man alle Wörter wieder lernen kann. | ||
+ | 1. Implementiere eigene Features. | ||
Zeile 628: | Zeile 651: | ||
== Teil I == | == Teil I == | ||
- | Lese den Gemeinden-Datensatz von weiter oben ein und speichere die Daten in eine, Dictionary mit der folgenden Form: | + | Lese den Gemeinden-Datensatz |
<code json> | <code json> | ||
{ | { | ||
Zeile 671: | Zeile 694: | ||
===== Lösungen ===== | ===== Lösungen ===== | ||
- | ++++Auftrag | + | <nodisp 2> |
+ | |||
+ | ++++Lösungen | ||
=== Aufgabe A1 === | === Aufgabe A1 === | ||
Zeile 776: | Zeile 801: | ||
++++ | ++++ | ||
- | ++++Auftrag | + | ++++Lösungen |
=== Teil I === | === Teil I === | ||
Zeile 915: | Zeile 940: | ||
writer.writerows(data) # Write the data to the CSV file | writer.writerows(data) # Write the data to the CSV file | ||
</ | </ | ||
- | |||
- | ++++ | ||
- | |||
- | ++++Auftrag B (II)| | ||
- | |||
- | <nodisp 2> | ||
=== Teil IV === | === Teil IV === | ||
Zeile 1003: | Zeile 1022: | ||
writer.writerows(data) # Write the data to the CSV file | writer.writerows(data) # Write the data to the CSV file | ||
</ | </ | ||
- | |||
- | </ | ||
++++ | ++++ | ||
Zeile 1010: | Zeile 1027: | ||
++++Lösungen C| | ++++Lösungen C| | ||
- | |||
- | <nodisp 2> | ||
=== Teil I === | === Teil I === | ||
Zeile 1112: | Zeile 1127: | ||
txt_file.write(' | txt_file.write(' | ||
</ | </ | ||
- | |||
- | </ | ||
++++ | ++++ | ||
Zeile 1119: | Zeile 1132: | ||
++++Lösungen D| | ++++Lösungen D| | ||
- | |||
- | <nodisp 2> | ||
==== Aufgaben D1 ==== | ==== Aufgaben D1 ==== | ||
Zeile 1306: | Zeile 1317: | ||
print(count) | print(count) | ||
</ | </ | ||
- | |||
- | </ | ||
++++ | ++++ | ||
+ | </ |