Problemi con la comprensione del comportamento di Python quando si utilizzano operatori di disuguaglianza per confrontare gli elenchi. Ecco un frammento utilizzando la riga di comando interprete python3:Operatori di disuguaglianza Python; confronto degli elenchi
>>> [8] < [7]
False
>>> [8] < [9]
True
>>> [8, 6] < [9]
True
>>> [8, 6] < [9, 7]
True # So far so good
>>> [8, 6] < [9, 5]
True # Huh?
Quindi, chiaramente Python non è solo muove attraverso indici paralleli. Ho trovato alcune informazioni che dicono che in questo scenario, Python ordina gli elenchi "lessicograficamente", che suppongo significhi alfabeticamente.
Così, ho pensato che forse le liste vengono ordinati e poi confrontati con parallele, ma questo è smentite dal seguente esempio:
>>> [1, 2, 3] < [3, 2, 1]
True
La mia ipotesi è che il confronto interno sarebbe [1, 2, 3 ] < [1, 2, 3], che dovrebbe aver restituito false, dal 1 < 1 è false, 2 < 2 è falso, ecc ..
Ogni aiuto è apprezzato.
In un elenco alfabetico '86' <'95 ', giusto? Generalizzato: confrontando le sequenze, l'elemento di sinistra è "il più significativo". Una lista è solo un'altra sequenza. –