Курс 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. Комментарии в Python
  4. Итераторы с потерямиZIP
  5. Преобразование текста в нижний регистр
  6. Удаление дубликатов из списка с помощью dict.fromkeys
  7. Генераторы списков
  8. Оператор обр. импликации
  9. Правила именования переменных
  10. Поиск уникальных элементов строкой в Python
  11. Искажение имен в Python
  12. Создание словаря через dict comprehension
  13. Замена подстроки
  14. Функции классификации комплексных чисел
  15. Декоратор total_ordering для класса Point
  16. Вывод с переменной через запятую
  17. Определение имен функций
  18. Упрощенный вывод данных в Python
  19. Расчет времени выполнения
  20. Логирование с Logzero
  21. Оператор break в Python
  22. Переопределение метода __or__()
  23. Порядок и длина множеств в Python
  24. Получение срезов итераторов
  25. Реверс строки и списка в Python.
  26. Поиск самого длинного слова в списке с использованием max()
  27. Множественные конструкторы в Python
  28. Генерация случайных чисел в Python
  29. Удаление ключей из словаря
  30. Аргумент по умолчанию
  31. Удаление ключа из словаря в Python
  32. Получение значений из словарей
  33. Поиск всех индексов подстроки
  34. Конструктор в Python
  35. Проверка кортежей.
  36. Метод join() для объединения элементов строки
  37. Работа со строками в Python
  38. Создание множества в Python
  39. Работа с пользовательским вводом
  40. Проверка условий в Python
  41. Список переменных с %who
  42. Управление доступом к модулю
  43. Лямбда-функции в defaultdict
  44. Скрытие вывода данных
  45. Сортировка с параметром key
  46. Создание коллекций из выражения-генератора

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