Heim > Fragen und Antworten > Hauptteil
Erster Code:
# -*- coding:gb2312 -*-
# 递归阶乘
def getnum(num):
if num > 1:
print(num)
return num * getnum(num - 1)
else:
print(num)
return num
result = getnum(5)
print(result)
Das erste Ergebnis der Codeausführung:
Zweiter Code:
# -*- coding:gb2312 -*-
# 递归阶乘
def getnum(num):
if num > 1:
return num * getnum(num - 1)
print(num)
else:
return num
print(num)a
result = getnum(5)
print(result)
Das zweite Ergebnis der Codeausführung:
Meine Frage:
Ich habe die print(num)-Anweisung zur Funktion hinzugefügt. Warum kann der erste Teil des Codes 5 4 3 2 1 und dann 120 ausgeben? Warum im zweiten Teil des Ergebnisses nur 120, aber Nein 5 4 3 2 1? Logischerweise habe ich bereits alle Druckanweisungen geschrieben, also sollte ich sie ausdrucken.