Веб-версияОткрыть в Telegram

Сообщениеfor ... else?

10 мая 2023
P
for ... else? Рассмотрим пример использования ключевого слова else в цикле while: >>> i = 1 >>> while i < 4: ... print(i) ... i += 1 ... else: ... print('Вышли из цикла!') Если выполнить этот цикл, то мы получим: 1 2 3 Вышли из цикла! Здесь блок else выполняется только тогда, когда условие выхода из цикла перестает быть верным. Особенность здесь в том, что если вывалиться из цикла через break или через исключение, то блок else выполняться не будет. Это работает не только с циклами while, но и с циклами for: >>> for value in values: ... if value == 4: ... print('Нашли!:)') ... break ... else: ... print('Не нашли:(') И так же можно с try-except блоками. На самом деле исключения в Python это не try-except-finally, а try-except-else-finally, ниже пример: >>> num = 0 >>> try: ... result = 1 / num ... except ZeroDivisionError: ... print('Деление на ноль!') ... else: ... print('Конечное число.') ... finally: ... print('Вычисления закончены.') ... Деление на ноль! Вычисления закончены. А если задать num = float('Inf'), то в результате деления мы получим 0 и вывод будет: Конечное число. Вычисления закончены. Блок finally выполняется в любом случае. А else можно использовать, если нужно выполниь еще какой-то код в случае отсутствия исключений. Например, это может быть полезно в тестах, когда мы хотим логгировать как в случае падения теста на исключении, так и в случае, если исключений брошено не было. В общем, есть конструкции while-else и for-else, в которых else отрабатывает в случае <<штатного>> завершения цикла. Еще else можно использовать в try-except блоке, чтобы выполнить какой-то код только в случае успешного выполнения блока try. Во всех случаях использование else позволяет более гибко управлять потоком выполнения 🐍
286 ·

Рядом в ленте

PPYTHON IN DEPTH🐍Одинарное подчеркивание в конце переменной Недавно говорила об одинарном символе подчеркивания в Python. Теперь поговорим о подчеркивании в конце переменной: myPPYTHON IN DEPTH🐍List astonishment Допустим, мы хотим написать функцию, которая будет принимать на вход список. Естественным ходом выглядит написать что-то вроде: >>> def foo(da
это сообщение
PPYTHON IN DEPTH🐍Timsort Для сортировки в CPython используется алгоритм Timsort, который его создатель Тим Петерс застенчиво назвал в честь себя😏. Timsort — это комбинация сортиPPYTHON IN DEPTH🐍Введение в множества Set' ы в Python реализованы так, что максимально напоминают математические множества. Давайте пройдемся по основным свойствам и возможностя
🐍🐍Python🪆🐍Python🪆@python_chat_ru · группа · Технологии
20участников39сообщений в индексе
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем