Курс Python → Оператор Walrus в Python
Оператор Walrus в Python 3.8 представляет собой удобный способ присваивания значения переменной и одновременной его использования в выражении. Синтаксис оператора Walrus прост — NAME:= expr, где NAME — это допустимый идентификатор, а expr — допустимое выражение. Это позволяет избежать повторного вычисления значения и улучшает читаемость кода.
Однако стоит помнить, что оператор Walrus не поддерживает повторяемую упаковку и распаковку значений. Например, (a := 6, 9) будет эквивалентно ((a := 6), 9), а значение переменной a будет равно 6. Это означает, что нельзя использовать оператор Walrus для присваивания нескольких значений одновременно, как в (a, b = 6, 9).
Важно отметить, что заключение в скобки выражения, содержащего оператор присваивания =, не допускается. Поэтому использование оператора Walrus в подобных конструкциях приведет к синтаксической ошибке. Например, (a, b = 6, 9) вызовет ошибку из-за попытки использования оператора присваивания внутри выражения с оператором Walrus.
# Примеры использования оператора Walrus
a = 5
if (n := a % 2) == 1:
print(f"{a} is odd")
else:
print(f"{a} is even")
Приведенный выше пример демонстрирует использование оператора Walrus для проверки четности числа a. Здесь значение остатка от деления a на 2 присваивается переменной n с помощью оператора Walrus, что позволяет избежать повторного вычисления значения. Это делает код более компактным и понятным.
Другие уроки курса "Python"
- Очистка данных в Python
- Создание словарей и множеств в Python.
- ChainMap.new_child() — добавление нового словаря
- Работа со слайсами
- Идентификатор объекта в Python
- Управление браузером с Selenium
- Работа с пакетами
- Список и кортеж в Python
- Оформление кода по PEP 8
- Различия символов в Python
- Класс Counter() для подсчета элементов
- Установка и использование emoji
- Декораторы в Python
- Замена атрибута в именованном кортеже
- Проверка переменных окружения в Python
- Использование подчеркивания в REPL
- Фильтрация входных данных в Python
- Функция findall() для поиска вхождений строки
- Умножение строк и списков
- Декораторы в Python
- Работа с файловой системой в Python
- Операции с матрицами в Python
- Метод enumerate() в Python
- Преобразование генераторов в циклы
- Условные выражения в Python
- Виртуальные среды в Python
- Нан-рефлексивность в Python
- Создание именованных кортежей в Python
- Создание списков в Python
- Управление экспортом элементов
- Асинхронный код в Python
- Форматирование данных с помощью pprint
- Поиск простых чисел
- Поиск самого длинного слова в списке с использованием max()
- Операции с комплексными числами
- Бесконечная проверка в Python
- Принципы Zen of Python
- Отслеживание прогресса с tqdm
- Инверсия списка и строки
- Функция format() в Python
- Работа с эмодзи в Python
- Обработка ошибки IndexError
- Множественное присваивание в Python
- Управление контекстом выполнения















