Оператор «Морж» — это оператор Python, объединенный с PEP 572 (выражения присваивания) и представленный в Python 3.8.0. Он назван «Морж» из-за его сходства с «глазами и бивнями» Моржа (животного). Этот оператор можно использовать для присвоения значения и запуска любых допустимых выражений Python в одном операторе.
идентификатор: = любое допустимое выражение Python
Давайте, рассмотрим пример для предыдущих версий.
›››name = «арафат»
›››печать(имя)
Арафат
с оператором Walrus мы можем выполнить ту же задачу в одну строку.
Перед написанием кода убедитесь, что в вашей системе установлен Python 3.8.0, иначе вы получите SyntexError.
›››print(имя := «арафат ратул»)
Арафат Ратул
>>>название
«арафат ратул»
В операторе «если» у оператора «морж» есть много дел. Предположим, у вас есть список, и вы хотите проверить некоторые условия в списке, а также сохранить значения в переменной. В предыдущих версиях нам приходилось выполнять такую задачу…
›››a_list = [1,2,3,4,5,6,7]
›››item = a_list[3]
›››если элемент != 6:
… print("Нет, это не значение")
но с помощью оператора Walrus задачу можно минимизировать в одну строку.
›››a_list = [1,2,3,4,5,6,7]
›››if (item := a_list[3]) != 6:
… print("Нет, это не значение")
Walrus Operator также можно использовать в циклах. Если мы напишем программу, которая продолжает получать ввод от пользователя до тех пор, пока пользователь не даст команду «конец», мы можем написать эту программу следующим образом.
›››a_list = список()
››› while(input_data := input()) != ‘конец’:
… a_list.append(входные_данные)
…
3
4
2
конец
>>> список
[‘3’, ‘4’, ‘2’]
в коде мы каждый раз берем одно значение и проверяем, равно ли оно «концу», если нет, то добавляем его в предопределенный список.
Это было краткое обсуждение этой новой функции Python 3.8. Кстати, этот оператор вызвал много споров среди программистов. Давайте посмотрим, насколько это может облегчить нашу жизнь.