Problemy z rozumieniem zachowania w języku Python podczas korzystania z operatorów nierówności do porównywania list. Oto fragment z wykorzystaniem python3 wiersza poleceń interpretera:Operatory nierówności Python; porównywanie list
>>> [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?
więc wyraźnie Python nie tylko poruszanie się indeksów równoległych. Znalazłem informacje, które mówią, że w tym scenariuszu Python porządkuje listy "leksykograficznie", co, jak sądzę, oznacza alfabetycznie.
Więc pomyślałem, że może wykazy dostać sortowane, a następnie porównywane równolegle, ale to jest obalona przez następujący przykład:
>>> [1, 2, 3] < [3, 2, 1]
True
Domyślam się, że wewnętrzne porównanie byłoby [1, 2, 3 ] < [1, 2, 3], które powinny powrócić Fałsz, ponieważ 1 < 1 jest fałszywe, 2 < 2 jest fałszywe, itp.
Każda pomoc jest doceniana.
W alfabetycznej listy '86' < '95', prawda? Uogólnione: Porównywanie sekwencji, lewy element jest "najbardziej znaczący". Lista to tylko kolejna sekwencja. –