print(f := (lambda x=int(input()): 1 if x == 1 else x * f(x-1)))
<function <lambda> at 0x0000024CF90E3E20>
:=
, но проведя аналогию с этим:print(a := 10)
>>> 10
def f(x=int(input())):
смысла особого тут нет, ты на этапе определения функции, ожидаешь пользовательский ввод и присваиваешь x этот ввод как значение по умолчанию.