Курс 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. Сравнение def и lambda-функций
  2. Управление виртуальными средами в Python
  3. Локальные переменные.
  4. Создание и обучение модели с Keras
  5. Работа с изменяемыми списками
  6. Работа с классами данных
  7. Создание треугольника Паскаля
  8. Работа с itertools
  9. Работа с файлами в Python
  10. Создание словаря с значением по умолчанию
  11. Распаковка значений в Python
  12. Создание детектора плагиата
  13. Мониторинг памяти с Pympler
  14. Вакансии в Nebius
  15. Руководство по использованию Colorama
  16. Операция += для списков
  17. Работа с JSON в Python
  18. Python groupby() из itertools: работа с повторяющимися элементами
  19. Метод join() для объединения элементов
  20. Функциональное программирование в Python
  21. Проектирование Singleton с метаклассом
  22. Применение промокода в Много лосося
  23. Обрезка изображения с Pillow
  24. Модуль array: создание и использование массивов
  25. Работа с асинхронными задачами в Python
  26. Переопределение метода __floordiv__
  27. Поиск индексов в списке
  28. Оператор break в Python
  29. Тернарный оператор в Python
  30. Имена объектов в Python
  31. Установка максимального количества цифр
  32. Функции map, filter и reduce
  33. Срез в Python
  34. Monkey Patching в Python
  35. Удаление элементов по срезу
  36. Работа с Event() в threading
  37. Преобразование Word в PDF с Spire.Doc
  38. Импорт модулей в Python 3.12
  39. Удаление эмодзи с помощью pandas
  40. Конвертация коллекций в Python
  41. Объединение словарей в Python 3.5+
  42. Разработка игры Pong с turtle
  43. Проверка наличия элемента в списке
  44. Конкатенация строк в Python
  45. Установка и использование библиотеки google
  46. Многопоточность в Python
  47. Распаковка аргументов в Python

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