lehrkraefte:snr:informatik:python:listen

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
lehrkraefte:snr:informatik:python:listen [2021/10/27 09:25]
Olaf Schnürer [Listen erzeugen]
lehrkraefte:snr:informatik:python:listen [2022/09/27 11:48] (current)
Olaf Schnürer
Line 1: Line 1:
 +~~NOTOC~~
 ====== Listen ====== ====== Listen ======
  
Line 62: Line 63:
 print(a) print(a)
 b = schuelerliste[:4]  b = schuelerliste[:4] 
-print(b)  
 # Lässt man den ersten Parameter weg, wird dieser also automatisch auf ... gesetzt. # Lässt man den ersten Parameter weg, wird dieser also automatisch auf ... gesetzt.
 +print(b) 
  
 c = schuelerliste[2: c = schuelerliste[2:
-print(c) 
 # Lässt man den zweiten Parameter weg, wird dieser automatisch auf ... gesetzt. # Lässt man den zweiten Parameter weg, wird dieser automatisch auf ... gesetzt.
 +print(c)
  
 d = schuelerliste[:] d = schuelerliste[:]
-print(d) 
 # Lässt man beide Parameter weg, so werden diese automatisch auf ... und ... gesetzt. # Lässt man beide Parameter weg, so werden diese automatisch auf ... und ... gesetzt.
 # Dies ist nützlich, um eine Kopie der Liste zu erstellen, vgl. die Diskussion unten, wo wir erklären, dass Listen //mutabel// sind. # Dies ist nützlich, um eine Kopie der Liste zu erstellen, vgl. die Diskussion unten, wo wir erklären, dass Listen //mutabel// sind.
 +print(d)
  
 # Die beiden Parameter dürfen auch negativ sein! Was bewirkt das? Hinweis: Zähle vom Ende der Liste! # Die beiden Parameter dürfen auch negativ sein! Was bewirkt das? Hinweis: Zähle vom Ende der Liste!
Line 92: Line 93:
 <code python> <code python>
 h = schuelerliste[::-1]  h = schuelerliste[::-1] 
-print(h) 
 # Beachte hier, dass die weggelassenen beiden ersten Parameter hier nicht wie oben durch ... und ... ersetzt werden, # Beachte hier, dass die weggelassenen beiden ersten Parameter hier nicht wie oben durch ... und ... ersetzt werden,
 # sondern auf Grund der negativen Schrittweite durch ... und ... # sondern auf Grund der negativen Schrittweite durch ... und ...
 +print(h)
 </code> </code>
 </WRAP> </WRAP>
Line 133: Line 134:
 print(schuelerliste) print(schuelerliste)
 </code> </code>
-Beachte die neue Syntax: *Name der Liste) + Punkt + Funktionsaufruf! Solche Funktionsaufrufe verändern bisweilen nur die Liste (wie ''insert'') bisweilen verändern sie die Liste und liefern einen Rückgabewert (wie ''pop''). +Beachte die neue Syntax: (Name der Liste) + Punkt + Funktionsaufruf! Solche Funktionsaufrufe verändern bisweilen nur die Liste (wie ''insert'') bisweilen verändern sie die Liste und liefern einen Rückgabewert (wie ''pop''). 
 </WRAP> </WRAP>
  
Line 263: Line 264:
 Da ''a'' als Integer-Variable immutabel ist, kann der Befehl ''b = 4'' den Inhalt der entsprechenden Speicheradresse nicht verändern. Stattdessen wird an einer freien Speicheradresse 4 als Wert der Variablen ''b'' gespeichert. Da ''a'' als Integer-Variable immutabel ist, kann der Befehl ''b = 4'' den Inhalt der entsprechenden Speicheradresse nicht verändern. Stattdessen wird an einer freien Speicheradresse 4 als Wert der Variablen ''b'' gespeichert.
  
-Wovon hängt es ab, ob ein //Datentyp// (Beispiel für Datentypen sind strings, integers, floats, Booleans, lists) mutabel oder immutabel ist? Dies ist schlicht von den Entwicklern der Sprache Python so festgesetzt worden.+Wovon hängt es ab, ob ein //Datentyp// (Beispiele für Datentypen sind strings, integers, floats, Booleans, lists) mutabel oder immutabel ist? Dies ist schlicht von den Entwicklern der Sprache Python so festgesetzt worden.
  
-Will man wirklich eine neue Liste erzeugen (also eine Kopie der alten Liste an einer neuen Speicheradresse), so tut es in unserem Fall((Bei verschachtelten Listen muss man besser aufpassen und die Befehle copy oder deepcopy aus dem Modul copy verwenden: Die unterschiedlichen Effekte sind hier illustriert:+Will man wirklich eine Kopie einer gegebenen Liste (an einer neuen Speicheradresse) erzeugen, so tut es((Bei verschachtelten Listen muss man besser aufpassen und die Befehle copy oder deepcopy aus dem Modul copy verwenden: Die unterschiedlichen Effekte sind hier illustriert:
 <code python> <code python>
 import copy import copy
Line 306: Line 307:
 </WRAP> </WRAP>
  
 +2aLM und 2dNP bis hier am 27.10.2021 (jedenfalls einige)
 ===== Aufgaben ===== ===== Aufgaben =====
  
  • lehrkraefte/snr/informatik/python/listen.1635319519.txt.gz
  • Last modified: 2021/10/27 09:25
  • by Olaf Schnürer