Найти тему
1245 подписчиков

Сегодня пост, не статья в понимании Дзен. Добавка к подборке Базовый курс. Ну буквально не большие заметки по нововведению в язык Python начиная с версии 3.8. Конечно, речь идёт о "моржовом" операторе — ":=". Стандартная запись

(value := 10)
print(value)
Результат
10
Но что здесь нового? Тоже, что обычный оператор "=". Но дело в том, что можно и так
print(value := 10)
print(value)
Результат
10
10
Да, вот так. Т.е. само выражение присвоения также имеет величину, равную выражению справа после знака ":=".
Что это нам может дать? Ну, например, такое
sm = 1000
while ((sm := sm + 1) % 13): pass;
print(sm)
Получаем первое число после 1000, делящееся на 13.
Сказать, что это даёт какой-то особый выигрыш в записи программного кода, ну я бы особенно не стал утверждать. Но дополнительная возможно в Python конструировать одностроковые выражения, конечно, появляется.
Сегодня пост, не статья в понимании Дзен. Добавка к подборке Базовый курс. Ну буквально не большие заметки по нововведению в язык Python начиная с версии 3.8.
Около минуты