⼀. 函式名的運⽤.
函式名是⼀個變數, 但它是⼀個特殊的變數, 與括號配合可以執⾏函式的變數.
1. 函式名的記憶體位址
def func():
print("呵呵")
print(func)
結果:2. 函式名可以賦值給其他變數
def func():
print("呵呵")
print(func)
a = func # 把函式當成⼀個變數賦值給另⼀個變數
a() # 函式調⽤ func()
3. 函式名可以當做容器類的元素
def func1():
print("呵呵")
def func2():
print("呵呵")
def func3():
print("呵呵")
def func4():
print("呵呵")lst = [func1, func2, func3]
for i in lst:
i()4. 函式名可以當做函式的引數
def func():
print("吃了麼")
def func2(fn):
print("我是func2")
fn() # 執⾏傳遞過來的fn
print("我是func2")
func2(func) # 把函式func當成引數傳遞給func2的引數fn.
5. 函式名可以作為函式的返回值
def func_1():
print("這⾥是函式1")
def func_2():
print("這⾥是函式2")
print("這⾥是函式1")
return func_2
fn = func_1() # 執⾏函式1. 函式1返回的是函式2, 這時fn指向的就是上⾯函式2
fn() # 執⾏上⾯返回的函式
函式名的使 以及第 類物件 閉包 迭代器
一丶函式名的應用 函式名是乙個變數,但它是乙個特殊的變數,與括號配合可以執行函式的變數.1.函式名的記憶體位址 def func print 呵呵 print func 結果 2.函式名可以賦值給其他變數 def func print 呵呵 print func a func 把函式當成乙個變數賦值...
除錯 列印函式棧,以及由函式指標輸出函式名的方法
以下皆在linux環境下。windows上用vs可隨時檢視函式棧。使用backtrace 相關函式來達到輸出函式棧的目的,man backtrace檢視詳細的引數,返回值等資訊。以下測試例,編譯時需加上 rdynamic選項 include include include define size 1...
day 12 函式名的應用 閉包 迭代器
今日主要內容 1,函式名的應用,第一類物件 函式名可以像變數一樣進行使用 再函式名後面新增 才是對函式的呼叫,否則列印的是函式的記憶體位址 1.賦值 2.作為list元素 3.作為引數 def func print 吃了 麼 def func2 fn print 我是func2 fn 執 行 傳遞過...