Die Linie ist:Wie funktioniert dieser komplexe Ausdruck mit OR?
key1 = dictionary_name.get('key1', ['']) [0] or 0
Ich verstehe die get
Methode und den Standardwert, aber ich habe keine Ahnung, was mit dem or
geschieht nach dem )
. Die Zeile scheint die Funktion zu haben, den Wert eines Schlüssels aus einem Verzeichnis zu lesen und 0
zurückzugeben, wenn der Wert ' '
ist.
Aber wie funktioniert die Linie, vor allem die Boolean or
, im Detail?
Wenn das nullte Element des Ergebnisses von 'get' falsch ist, wird das Ergebnis '0' sein. Ansonsten verwende dieses Element. – jonrsharpe
'or' ist ein fauler Operator. Wenn der erste Gegenstand truthy ist, wird er das zurückgeben. Andernfalls wird der zweite Wert zurückgegeben. –
... ahhh, jetzt verstehe ich ... vielen Dank! – braasch