Форум сайта python.su
23
сам разобраться не смог:
почему здесь не вызывается исключение?
b = [0, 1, 2, 3, 4] print b[33:99]
Офлайн
6
оператор : всегда возвращaет новый список, но т.к. элементы не сущеcтвуют, список пустой
Отредактировано Nata (Окт. 3, 2014 14:11:27)
Офлайн
23
Nataтогда так:
но т.к. элементы не сущеcтвуют
Отредактировано vrabey (Окт. 3, 2014 14:15:30)
Офлайн
6
потому что так устроен оператор : , он сперва создает новый список (в памяти), а затем уже копирует туда адреса указанных элементов; даже если элементов нет, копия списка все равно создается; а почему не выдает ошибку при копировании элементов, это надо к создателю питона :)
то же самое с
>>> b[2:2] []
Отредактировано Nata (Окт. 3, 2014 14:52:43)
Офлайн
33
vrabey
почему при несуществующих елементах не вызывается исключение?
Nata
почему не выдает ошибку при копировании элементов, это надо к создателю питона :)
Отредактировано Budulianin (Окт. 3, 2014 14:57:46)
Офлайн
6
вопрос думаю был не в том, как изящно обрабатывать исключения и прятать Tracebacks, а в том, почему они предпочли их спрятать, а не информировать пользователей, что элементы не существуют
Офлайн
23
Nata…
вопрос думаю был не в том
Budulianinтеперь буду
Кто-то не читал tutorial.
Офлайн
33
NataЯ и не говорил, как это делать.
вопрос думаю был не в том, как изящно обрабатывать исключения и прятать Tracebacks,
Budulianin
почему при несуществующих елементах не вызывается исключение?
Офлайн