Mam listę listPython Siła Lista Index poza zasięgiem Exception
x = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Chcę kod rzucać tablicy Out of Bounds wyjątek podobny do tego, jak się robi w Javie, gdy indeks jest poza zakresem . Na przykład,
x[0][0] # 1
x[0][1] # 2
x[0-1][0-1] # <--- this returns 9 but I want it to throw an exception
x[0-1][1] # <--- this returns 7 but again I want it to throw an exception
x[0][2] # this throws an index out of range exception, as it should
Jeśli jest wyjątek, chcę wrócić 0.
try:
x[0-1][0-1] # I want this to throw an exception
except:
print 0 # prints the integer 0
myślę zasadzie w każdej chwili indeks jest ujemny, wyjątek.
Liczba -1 nie jest jednak niepoprawnym indeksem dla listy. Po prostu zwraca ostatni element ... Dlaczego miałoby to wynikać z błędu? – Ben
Indeksowanie negatywne jest obsługiwane w języku Python. – letsc
Ujemne indeksy mają szczególny, bardzo użyteczny cel w Pythonie: indeksowanie od końca 'listy' (lub' str', lub co masz). Chęć wyeliminowania tego zachowania prawdopodobnie oznacza, że powinieneś wrócić i przemyśleć ponownie swoją logikę programu. – TigerhawkT3