Python函數(shù)的嵌套詳解
Python允許在函數(shù)中定義函數(shù),這通常被稱為嵌套函數(shù)或者內部函數(shù)。
def speak(text):
def my_lower(t):
return t.lower() + '...'
return my_lower(text)
print(speak('Aomi'))每次調用speak()時,都會調用一個新的內部函數(shù)my_lower()并立即調用。
但是my_lower()只存在于speak內部,那怎么才能從speak外部訪問嵌套的my_lower()函數(shù)呢?
由于函數(shù)是對象,因此可以將內部函數(shù)返回給父函數(shù)的調用者。
例如:
def get_speak_fun(volume):
def my_lower(text):
return text.lower() + '...'
def yell(text):
return text.upper() + '...'
if volume> 0.5 :
return yell
else:
return my_lower
fun = get_speak_fun(0.8)
print(fun('I am in Aomi'))get_speak_fun實際上不調用任何函數(shù),只是根據(jù)volume的參數(shù)值選擇適當?shù)膬炔亢瘮?shù),然后返回這個函數(shù)對象。返回的函數(shù)既可以直接調用,也可以先指定一個變量名再使用。
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
相關文章
PyTorch如何創(chuàng)建自己的數(shù)據(jù)集
這篇文章主要介紹了PyTorch如何創(chuàng)建自己的數(shù)據(jù)集,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-11-11

