0

Польза оператора Walrus в Python

Друзья, давайте рассмотрим интересный оператор в Python - walrus, или моржовый.

Он появился в питоне, начиная с версии 3.8 и представляет собой двоеточие со знаком равно

:=

Чем он может быть полезен разработчику?

Основная его суть в том, что мы можем выполнить присваивание переменной прямо внутри выражения, и при этом выражение по-прежнему сможет возвращать значение.

Вот самый простой пример - в первом принте мы использовали оператор walrus, но при этом не только присвоили значение переменной variable, но и смогли вернуть значение на вход функции print - поэтому она смогла распечатать значение.

С обычным присваиванием через равно =, такой трюк работать не будет:

И нам пришлось бы писать что то вроде:

То есть больше строк кода, чтобы добиться того же результата.

Согласен, пример довольно искусственный, но помимо компактности, walrus оператор может нам помочь также уменьшить количество вызовов функций и процессорного времени.

Давайте посмотрим  на пример со списковым включением - из исходного списка lst сделаем список кубов, причем только тех кубов, которые меньше 150.

В первом случае мы дважды вызвали n**3 для каждого элемента, а во втором только один - так как сразу присвоили значение переменной cube. Поэтому во втором случае будет тратиться в 2 раза меньше процессорного времени.

Walrus мы можем использовать также внутри условия, ведь оператор опять же вернет значение, которое можно с чем-либо сравнить. Единственное, нужно заключить в скобки присваивание с помощью walrus:

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

Спасибо за прочтение, друзья

Пишите в комментах, что думаете по поводу walrus оператора и полезен ли он Вам, а вот здесь я публикую еще и разборы решений задачек с собеседований.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества