Найти - Пользователи
Полная версия: slice
Начало » Python для новичков » slice
1
vrabey
сам разобраться не смог:
почему здесь не вызывается исключение?
b = [0, 1, 2, 3, 4]
print b[33:99]
Nata
оператор : всегда возвращaет новый список, но т.к. элементы не сущеcтвуют, список пустой
vrabey
Nata
но т.к. элементы не сущеcтвуют
тогда так:
почему при несуществующих елементах не вызывается исключение?
начало среза за пределами диапазона
Nata
потому что так устроен оператор : , он сперва создает новый список (в памяти), а затем уже копирует туда адреса указанных элементов; даже если элементов нет, копия списка все равно создается; а почему не выдает ошибку при копировании элементов, это надо к создателю питона :)

то же самое с
>>> b[2:2]
[]
элементов там нет, возвращает пустой список
Budulianin
vrabey
почему при несуществующих елементах не вызывается исключение?
Nata
почему не выдает ошибку при копировании элементов, это надо к создателю питона :)

Можно сказать, что исключение специально обрабатывается “изящно”. Кто-то не читал tutorial.
Nata
вопрос думаю был не в том, как изящно обрабатывать исключения и прятать Tracebacks, а в том, почему они предпочли их спрятать, а не информировать пользователей, что элементы не существуют
vrabey
Nata
вопрос думаю был не в том

да нет просто не знал потому что
Budulianin
Кто-то не читал tutorial.
теперь буду


Budulianin
Nata
вопрос думаю был не в том, как изящно обрабатывать исключения и прятать Tracebacks,
Я и не говорил, как это делать.

Я ответил на:
Budulianin
почему при несуществующих елементах не вызывается исключение?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB