Schreibweisen für Listen in Python
Listen können auch durch Angabe ihrer einzelnen Einträge angegeben werden. Dazu werden Ausdrücke für diese Einträge in eckige Klammern geschrieben und durch Kommas voneinander getrennt.
- Schreibweise für eine leere Liste
[]
[]
- Schreibweise für eine Liste mit einem Eintrag
[ 1 ]
[1]
Der Autor dieses Kurses schreibt gerne noch ein Leerzeichen hinter die öffnende und vor die schließende Klammer, was aber nicht allgemein üblich ist. Entsprechend erscheinen diese Leerzeichen auch nicht in der Ausgabedarstellung des Listenobjektes.
- Schreibweise für eine Liste mit zwei Einträgen
[ 1, 2 ]
[1, 2]
- Schreibweise für eine Liste mit drei Einträgen
[ False, 2, "z" ]
[False, 2, 'z']
Falls die Liste nicht leer ist, ist es erlaubt, vor der schließenden Klammer noch ein Komma zu schreiben, ohne daß dies die Bedeutung verändert.
- Schreibweise für eine Liste mit einem Eintrag
[ 1, ]
- Schreibweise für eine Liste mit zwei Einträgen
[ 1, 2, ]
Tupel werden mit runden Klammern ausgegeben.
- Konsolenprotokoll
dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']
tuple( dir() )
('__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__')
type( dir() )
<class 'list'>
type( tuple( dir() ))
<class 'tuple'>
Die Länge von Listen.
- Protokoll
len( [] )
0
len( [ 7, ])
1
len( [ 7, 2, 4 ])
3
Eine leere Liste gilt als falsch; alle anderen Listen als wahr.
- Protokoll
bool( [] )
False
bool( [ 1 ])
True
Umwandlung
- Protokoll
list( () )
[]
tuple( [] )
()
Beispiele zur Listenverarbeitung
Listen lassen sich wie Tupel und Zeichenfolgen addieren oder mit einer Zahl vervielfachen.
- Auswertung
[ 1, "z" ]* 2 + [ "d" ]
[1, 'z', 1, 'z', 'd']
- Auswertung
[ 1, 2 ]==[ 1, 2 ]
True
Ein Tupel ist aber nie zu einer Liste gleich.
- Auswertung
( 1, 2 )==[ 1, 2 ]
False
Fehler durch versehentliches Umbinden
- Umbinden
list =[ 1, 2, 3 ]
- … später
list( "abc" )
TypeError: 'list' object is not callable
- Korrektur
del list
list_ =[ 1, 2, 3 ]
Listen und Tupel
Bisher scheinen Listen und Tupel sich nur etwas in der Schreibweise zu unterscheiden. Ein weiterer wichtiger Unterschied wird aber etwas später noch vorgestellt werden.