Курс 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"

  1. Очистка данных в Python
  2. Создание словарей и множеств в Python.
  3. ChainMap.new_child() — добавление нового словаря
  4. Работа со слайсами
  5. Идентификатор объекта в Python
  6. Управление браузером с Selenium
  7. Работа с пакетами
  8. Список и кортеж в Python
  9. Оформление кода по PEP 8
  10. Различия символов в Python
  11. Класс Counter() для подсчета элементов
  12. Установка и использование emoji
  13. Декораторы в Python
  14. Замена атрибута в именованном кортеже
  15. Проверка переменных окружения в Python
  16. Использование подчеркивания в REPL
  17. Фильтрация входных данных в Python
  18. Функция findall() для поиска вхождений строки
  19. Умножение строк и списков
  20. Декораторы в Python
  21. Работа с файловой системой в Python
  22. Операции с матрицами в Python
  23. Метод enumerate() в Python
  24. Преобразование генераторов в циклы
  25. Условные выражения в Python
  26. Виртуальные среды в Python
  27. Нан-рефлексивность в Python
  28. Создание именованных кортежей в Python
  29. Создание списков в Python
  30. Управление экспортом элементов
  31. Асинхронный код в Python
  32. Форматирование данных с помощью pprint
  33. Поиск простых чисел
  34. Поиск самого длинного слова в списке с использованием max()
  35. Операции с комплексными числами
  36. Бесконечная проверка в Python
  37. Принципы Zen of Python
  38. Отслеживание прогресса с tqdm
  39. Инверсия списка и строки
  40. Функция format() в Python
  41. Работа с эмодзи в Python
  42. Обработка ошибки IndexError
  43. Множественное присваивание в Python
  44. Управление контекстом выполнения

Marketello читают маркетологи из крутых компаний