Для чего в коде стоит знак *?
print(*(lambda a, b: (b, a))(int(input()), int(input())))
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Не ленитесь проверять разные варианты кода самостоятельно, ведь у питона есть интерактивный интерпретатор (и не один), в котором проверить разные варианты кода - дело нескольких секунд.
print(*(lambda a, b: (b, a))(int(input()), int(input())))
Вывод, если ввести 10 и 20:
20 10
А теперь убираем * и снова пробуем:
print((lambda a, b: (b, a))(int(input()), int(input())))
Вывод, если ввести 10 и 20:
(20, 10)
* разворачивает коллекцию, к которой она применяется, на отдельные элементы. Как можно видеть, без * печатается кортеж как он есть, а со * элементы коллекции (в данном случае - кортежа) выводятся на печать так, как будто это набор отдельных переменных. Иногда это бывает полезно (и далеко не только для печати).