一椿争、單個嵌套函數(shù)的調用
class MyClass(object):
def __init__(self):
pass
def FatherFunc(self,father_parameter:int):
def SonFunc1(Son_parameter1:int):
print(f"第1個子方法:{father_parameter*Son_parameter1}")
return SonFunc1
if __name__ == '__main__':
#創(chuàng)建類的實例
GetClass = MyClass()
#調用嵌套函數(shù)
SonFunc1 = GetClass.FatherFunc(666)
SonFunc1(1)
二、多個嵌套函數(shù)的調用
class MyClass(object):
def __init__(self):
pass
def FatherFunc(self,father_parameter:int):
def SonFunc1(Son_parameter1:int):
print(f"第1個子方法:{father_parameter*Son_parameter1}")
def SonFunc2(Son_parameter2:int):
print(f"第2個子方法:{father_parameter*Son_parameter2}")
return SonFunc1,SonFunc2
if __name__ == '__main__':
#創(chuàng)建類的實例
GetClass = MyClass()
#調用嵌套函數(shù)
SonFunc1,SonFunc2 = GetClass.FatherFunc(666)
SonFunc1(1)
SonFunc2(2)
三馋吗、遞歸函數(shù)的使用
def factorial(n):
if n == 0: # 基本情況
return 1
else:
return n * factorial(n - 1) # 遞歸情況
# 使用示例
print(factorial(5)) # 輸出: 120
'''
在調用factorial(5)時,函數(shù)的執(zhí)行過程大致如下:
factorial(5) 調用自身 factorial(4)夜畴。
factorial(4) 調用自身 factorial(3)拖刃,以此類推删壮。
當 n == 0 時,達到基本情況兑牡,開始返回央碟。
從 factorial(0) 開始,逐級返回 1 給上一層均函。
上一層 factorial(1) 返回 1 * factorial(0)亿虽,即 1 * 1,即 1苞也。
繼續(xù)返回 2 * 1洛勉,3 * (2 * 1),依次類推如迟,直至最初的 factorial(5)返回5*(4*(3*(2*1))) 得到最終結果 120收毫。
'''
四、匿名函數(shù)的使用
#name = lambda 參數(shù) : 表達式
A = lambda x: "正確" if x+2==4 else "錯誤"
B = lambda x,y: x+y
C = lambda *args: args
print("函數(shù)A:",A(2))
print("函數(shù)B:",B(3,8))
print("函數(shù)C:",C(["我","是","咧","表"],"啊"))
D:\Python\python.exe E:\DqsjTwoExample\TemporaryNotes.py
函數(shù)A: 正確
函數(shù)B: 11
函數(shù)C: (['我', '是', '咧', '表'], '啊')
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者