Пропустить до содержимого

Как использовать оператор Python walrus?

[

Оператор Моржова: Python 3.8. Операторы присваивания

В каждой новой версии Python добавляются новые возможности в язык. В случае с Python 3.8 самое значительное изменение касается добавления оператора присваивания. Конкретно, оператор := предоставляет новый синтаксис для присваивания переменных в середине выражений. Этот оператор в разговорной речи называют оператором Моржова.

Этот учебник представляет собой исчерпывающее введение в оператор Моржова. Вы узнаете некоторые из мотиваций для обновления синтаксиса и изучите некоторые примеры, где оператор присваивания может быть полезен.

В этом учебнике вы узнаете, как:

  • Определить оператор Моржова и понять его значение.
  • Понять случаи использования оператора Моржова.
  • Избавиться от повторяющегося кода с помощью оператора Моржова.
  • Преобразовывать код, использующий оператор Моржова, в код, использующий другие методы присваивания.
  • Понять последствия для обратной совместимости при использовании оператора Моржова.
  • Использовать соответствующий стиль в ваших выражениях присваивания.

Обратите внимание, что все примеры оператора Моржова в этом учебнике требуют Python 3.8 или более поздней версии для работы.

Основы оператора Моржова

Начнем с разных терминов, которыми программисты обозначают этот новый синтаксис. Вы уже видели некоторые из них в этом учебнике.

Оператор := официально известен как оператор присваивания. В начальных обсуждениях он был назван оператором Моржова, поскольку синтаксис := напоминает глаза и бивни бокового положения моржа. Вы также можете видеть, что оператор := называется оператором с двоеточием. Еще один термин, использованный для оператора присваивания, - именные выражения.

Привет, Моржов!

Чтобы получить первое впечатление о том, в чем состоят выражения присваивания, запустите интерактивную оболочку и поиграйте с следующим кодом:

>>> walrus = False
>>> walrus
False
>>> (walrus := True)
True
>>> walrus
True

На строке 1 показана традиционная инструкция присваивания, где значение False присваивается переменной walrus. Затем, на строке 5, вы используете выражение присваивания для присвоения значения True переменной walrus. После выполнения и строк 1 и 5, вы можете ссылаться на присвоенные значения, используя имя переменной walrus.

Возможно, вы задаетесь вопросом, почему на строке 5 используются скобки, и вы узнаете, почему скобки нужны позже в этом учебнике.

Примечание: Инструкция в Python - это блок кода. Выражение - это специальная инструкция, которая может быть вычислена в некоторое значение.

Например, 1 + 2 - это выражение, которое вычисляется в значение 3, в то время как number = 1 + 2 - это инструкция присваивания, которая не вычисляется в значение.