Rumah > Soal Jawab > teks badan
Kod pertama:
# -*- 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)
Hasil pelaksanaan kod pertama:
Kod kedua:
# -*- 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)
Hasil pelaksanaan kod kedua:
Soalan saya:
Saya menambah pernyataan print(num) pada fungsi Mengapa sekeping kod pertama boleh mencetak 5 4 3 2 1 dan kemudian 120 Mengapa dalam bahagian kedua hasil, hanya 120, tetapi No 5 4 3 2 1? Secara logiknya, saya telah pun menulis semua kenyataan cetakan, jadi saya harus mencetaknya.
PHP中文网2017-06-12 09:23:02
The return
之后的print
dalam sekeping kod kedua tidak boleh dilaksanakan Fungsi dikembalikan.