博主簡介:原互聯網大廠tencent員工,網安巨頭Venustech員工,阿裡雲開發社區專家博主,微信公眾號java基礎筆記優質創作者,csdn優質創作博主,創業者,知識共享者,歡迎關注,點贊,收藏。
實際開發過程中,經常會遇到很多完全相同或者非常相似的操作,這時,可以將實現類似操作的代碼封裝為函數,然後在需要的地方調用該函數。這樣不僅可以實現代碼的復用,還可以使代碼更有條理性,增加代碼的可靠性。下面我們來介紹一下python的函數嵌套調用相關內容。
Python還允許在一個函數中調用另外一個函數,這就是函數的嵌套調用。
Python支持函數的遞歸調用,所謂遞歸就是函數直接或間接地調用其本身。
例:計算1!+2!+3!+…+10!的值並輸出,使用函數的嵌套調用實現。
def fac(k): #定義fac函數,計算階乘
i = 2
t = 1
while i <= k:
t *= i
i = i + 1
return t #返回階乘結果
def sum(n): #定義sum函數,求累加
s = 0
i = 1
while i <= n:
s = s + fac(i) #調用fac函數
i += 1
return s #返回累加結果
print('1!+2!+3!…10!=',sum(10)) #調用sum函數
結果如下。
直接遞歸調用,間接遞歸調用,這兩種遞歸調用都是無休止地調用自身。因此,為了防止無限遞歸,所有遞歸函數都需要設定終止條件。
例:計算n的階乘。
def f(n): #定義遞歸函數
if n==1: #當n等於1時返回1
return 1
else: #當n不為1是返回f(n-1)*n
return f(n-1)*n
n = int(input('請輸入一個正整數:')) #輸入一個整數
print(n,'的階乘結果為:',f(n)) #調用函數f並輸出結果
結果如下。
1、廖雪峰的官網
2、python官網
3、Python編程案例教程
以上就是就是關於Python的函數嵌套調用相關知識,可以參考一下,覺得不錯的話,歡迎點贊、收藏、在看,歡迎微信搜索關注java基礎筆記,後面會不斷更新相關知識,大家一起進步。