Курс 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. Замер времени выполнения кода
  2. Протокол управления контекстом
  3. Хэш-функции и метод цепочек
  4. Транспонирование 2D-массива с помощью zip
  5. Повторение элементов в Python
  6. Конкатенация строк с помощью join()
  7. Операторы += в Python
  8. Метод radd для пользовательских чисел
  9. Вычисление натурального логарифма в NumPy
  10. Обновление и получение данных в SQLite
  11. Разделение строки с помощью split()
  12. Работа с контекстными менеджерами
  13. Создание коллекций из генератора
  14. Python enumerate() функции
  15. Безопасные SQL-запросы в Python 3.11
  16. Форматирование данных с помощью pprint
  17. Методы split() и join() — Python строк.
  18. Списки: объединение, изменение
  19. Метаклассы в Python
  20. Запуск внешнего кода в Jupyter
  21. Работа с enumerate()
  22. Работа с YAML в Python
  23. Создание словарей с defaultdict()
  24. Аннотации типов в Python
  25. Работа с модулем random
  26. Python Метод del.
  27. Создание уникального множества
  28. Python Метод sleep() времени
  29. Применение функции к списку
  30. Структура данных словарь в Python
  31. Lambda-функция в Python: использование с map() и sum()
  32. Операции с датами в Python
  33. Функция count() в Python
  34. Склеивание строк без циклов
  35. Поиск наиболее частого элемента списке
  36. Команда %dhist — список посещенных каталогов
  37. Сериализация данных в JSON с помощью json.dumps
  38. Названия столбцов в Python таблицах
  39. split() без разделителя
  40. Проблемы с именами переменных
  41. Разделение строки с помощью re.split()
  42. Работа со строками в Python

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