Vergleichen zweier Listen mit dem Operator "größer als" oder "kleiner als"

Bemerkte ich ein Stück code vor kurzem direkt Vergleich zweier Listen von Ganzzahlen in etwa so:

a = [10,3,5, ...]
b = [5,4,3, ...,]
if a > b:
     ...

das schien ein bisschen eigenartig, aber ich dachte es würde zurück True wenn alle list_a's Elemente, die größer sind als list_b's, und False, wenn jedes element gleich ist, oder list_b's Elemente, die größer sind als list_a's. Also habe ich es getestet:

>>> a=[3,3,3,3]
>>> b=[4,4,4,4]
>>> a>b
False
>>> b>a
True

Ok, das funktioniert. Wie:

>>> b = [1,1,1,1]
>>> a = [1,1,1,1]
>>> a>b
False
>>> b>a
False

aber wenn es bekommt mehr fuzzy:

>>> a=[1,1,3,1]
>>> b=[1,3,1,1]
>>> a>b
False
>>> b>a
True

oder:

>>> a=[1,3,1,1]
>>> b=[1,1,3,3]
>>> a>b
True
>>> b>a
False

sind die Ergebnisse ein bisschen Fremd. Was ist python eigentlich? Es scheint, dass es gibt das Ergebnis zugunsten der ersten Liste, in der Links die meisten element größer ist dann die entsprechende?

InformationsquelleAutor der Frage Timmy O'Mahony | 2012-10-24

Schreibe einen Kommentar