Я только что начал изучать python (v3.2.3) и столкнулся с нечетной проблемой return
в этой функции:
def test(x):
if x > 9 :
test(x - 10)
else:
print('real value',x)
return x
x = int(input())
y = test(x)
print('this should be real value',y)
Когда я запустил его, я получаю:
45
real value 5
this should be real value None
Но я ожидал:
45
real value 5
this should be real value 5
Я попытался добавить return x
вне if
, и я получил значение ввода по умолчанию. Может ли кто-нибудь объяснить, как работает return
?