lehrkraefte:blc:informatik:glf4-20:umgang-mit-dateien:challenge3

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
lehrkraefte:blc:informatik:glf4-20:umgang-mit-dateien:challenge3 [2021/02/22 20:13]
Ivo Blöchliger
lehrkraefte:blc:informatik:glf4-20:umgang-mit-dateien:challenge3 [2021/02/23 11:03]
Ivo Blöchliger [Listen (Arrays)]
Line 10: Line 10:
   * Mehr dazu auf https://www.json.org/json-de.html   * Mehr dazu auf https://www.json.org/json-de.html
 </WRAP> </WRAP>
 +
 +===== Listen (Arrays) =====
  
 <WRAP todo> <WRAP todo>
Line 43: Line 45:
 print(tabelle[0])  # erstes Element ist die Liste [1,2,3] print(tabelle[0])  # erstes Element ist die Liste [1,2,3]
 print(tabelle[0][1])  # zweites Element der Liste [1,2,3], also 2. print(tabelle[0][1])  # zweites Element der Liste [1,2,3], also 2.
 +
 +print("\nZeilenweise Ausgabe:")
 +for zeile in tabelle:
 +  print(zeile)
 </code> </code>
  
Line 51: Line 57:
 <code python> <code python>
 tabelle = [[x*y for x in range(1,6)] for y in range(1,6)] tabelle = [[x*y for x in range(1,6)] for y in range(1,6)]
 +print("Ganze tabelle:")
 +print(tabelle)
 +
 csv = "" csv = ""
  
 # #
 #  Hier die Variable csv erweitern #  Hier die Variable csv erweitern
 +# Inspirieren Sie sich dabei beim Beispiel mit den Primzahlen
 # #
  
Line 68: Line 78:
 5;10;15;20;25; 5;10;15;20;25;
 </code> </code>
 +</WRAP>
  
 +====== JSON in, CSV out ======
 +<WRAP todo>
 +  * Speichern Sie folgende Datei im Ordner ''challenges'': {{lehrkraefte:blc:informatik:glf4-20:umgang-mit-dateien:data01.json}}
 +  * Folgender Code liest die JSON-Datei ein und man erhält einen liste in der Variablen ''data'':
 +<code python jsonreader.py>
 +import json    # Für die Verarbeitung von JSON-Daten
 +
 +# Datei öffnen
 +datei = open("data01.json")
 +# JSON-Daten parsen
 +data = json.load(datei)
 +# Datei schliessen
 +datei.close()
 +
 +# Schlaufe über die Daten
 +for i in range(len(data)):
 +    print("data[%d] = %s" % (i,data[i]))
 +</code>
 +  * Erweitern Sie obiges Python-Programm so, dass eine Zeile im CSV-Format produziert wird.
 +</WRAP>
 +
 +<WRAP todo>
 +  * Speichern Sie folgende Datei im Ordner ''challenges'': {{lehrkraefte:blc:informatik:glf4-20:umgang-mit-dateien:data07.json}}
 +  * Schreiben Sie ein Python-Programm, das die Datei ''data07.json'' einliest und eine Zeile im CSV-Format produziert.
 +  * Speichern Sie das Resultat in der Datei ''data07.csv'' mit dem folgenden Code:
 +<code python>
 +datei = open("data07.csv", "w" # Datei zum Schreiben öffnen.
 +datei.write(csv)
 +datei.close()
 +</code>
 +  * Überprüfen Sie, ob sich die Datei mit Excel korrekt öffnen lässt.
 +
 +</WRAP>
 +
 +====== Dictionaries (JSON Objects) ======
 +<WRAP info>
 +  * Listen (Array) werden mit Zahlen von 0 bis n-1 indiziert, wobei n die Anzahl Element sind.
 +  * Dictionaries werden durch Strings (Zeichenketten) indiziert und haben a priori keine fixe Ordnung.
 +  * Dictionaries werden zwischen ''{'' und ''}'' geschrieben, wobei die einzelnen Einträge aus einem String in Anführungszeichen (der Key), einem Doppelpunkt '':'' und einem Wert (Value) bestehen. Die Werte können beliebige Python-Objekte sein, wie Zahlen, Strings, Listen oder auch wieder Dictionaries.
 +  * Studieren Sie folgenden Code:
 +<code python>
 +d = {"4eNP": 23, "4iW" : 22, "4kW" : 20}
 +print(d["4iW"])   # Liefert 22
 +print(d.keys())   # Liefert ['4kW', '4iW', '4eNP']
 +print(d.values()) # Liefert [20, 22, 23]
 +print(d.items())  # Liefert [('4kW', 20), ('4iW', 22), ('4eNP', 23)]
 +# Loop über alle Elmente
 +for key,value in d.items():
 +  print("d['%s']=%d" % (key, value))
 +</code>
 +
 +</WRAP>
 +
 +<WRAP todo>
 +  * Schreiben Sie ein Python-Programm, das folgende JSON-Datei in eine CSV-Datei mit 2 Spalten umwandelt: {{lehrkraefte:blc:informatik:glf4-20:umgang-mit-dateien:data03.json}}
 +</WRAP>
 +
 +<WRAP todo>
 +  * Diejenigen, die Daten im JSON-Format haben (z.B. von Spotify), können versuchen, diese als CSV zu exportieren. Die anderen können diese Datei verwenden: {{lehrkraefte:blc:informatik:glf4-20:umgang-mit-dateien:data04.json}}.
 </WRAP> </WRAP>
  • lehrkraefte/blc/informatik/glf4-20/umgang-mit-dateien/challenge3.txt
  • Last modified: 2021/02/25 07:21
  • by Ivo Blöchliger