แบบเรียกซ้ำ function เป็นฟังก์ชันที่เรียกตัวเองระหว่างดำเนินการ ซึ่งช่วยให้ฟังก์ชันสามารถทำซ้ำได้หลายครั้ง โดยแสดงผลลัพธ์และจุดสิ้นสุดของการวนซ้ำแต่ละครั้ง การเรียกซ้ำมีความเกี่ยวข้องกับอินฟินิตี้
ต่อไปนี้เป็นตัวอย่างของฟังก์ชันแบบเรียกซ้ำเพื่อค้นหาแฟกทอเรียลของจำนวนเต็ม
ปัจจัย ของจำนวนหนึ่งเป็นผลคูณของจำนวนเต็มทั้งหมดตั้งแต่ 1 ถึงจำนวนนั้น
ตัวอย่างเช่น แฟกทอเรียลของ 9 (แสดงเป็น 9!) คือ 1*2*3*4*5*6*7*8*9 =362880
ตัวอย่างที่ 1
def factorial(i): if i == 1: return 1 else: return (i * factorial(i-1)) number = 9 print("The factorial of", number, "is", factorial(number))
ผลลัพธ์
The factorial of 9 is 362880
ในโปรแกรมด้านบน factorial() เป็นฟังก์ชันแบบเรียกซ้ำตามที่เรียกตัวเอง การเรียกแต่ละฟังก์ชันจะคูณตัวเลขด้วยแฟกทอเรียลของจำนวน 1 จนกว่าจำนวนจะเท่ากับหนึ่ง
เช่น วางกระจกเงาคู่ขนานสองอันหันเข้าหากัน วัตถุใด ๆ ที่อยู่ระหว่างพวกเขาจะถูกสะท้อนซ้ำ
ตัวอย่างที่ 2
def Function(x): if (x < 1): return else: print( x,end = " ") Function(x-1) print(x,end = " ") return x = 5 Function(x)
ผลลัพธ์
5 4 3 2 1 1 2 3 4 5