我試圖執行這部分代碼:
def func():
print 'function is being called'
mapp=dict{'first': 'value_1','second':func()}
print mapp.get('first')
我希望看到輸出為'value_1',但即使我沒有明確呼叫它,該函式也會被執行。輸出:
在此處輸入影像描述
如何制作此字典,以便在未顯式呼叫時不會執行該函式。
uj5u.com熱心網友回復:
func()將呼叫該函式。如果您想將該函式作為一等物件,則只需使用func. 例子:
mapp = {'first': 'value_1', 'second': func}
uj5u.com熱心網友回復:
將函式名放入字典中,不帶括號,只需函式名:mapp=dict{'first': 'value_1', second':func}。
uj5u.com熱心網友回復:
def func():
print('function is being called')
def func_2(msg='No comment'):
print(msg)
mapp = {'first': 'value_1', 'second': func, 'third': func_2, 'fourth': func_2}
print(mapp.get('first'))
mapp.get('second')()
mapp.get('third')()
mapp.get('fourth')('Yes, I have a lot to say')
輸出
value_1
function is being called
No comment
Yes, I have a lot to say
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/438957.html
上一篇:從一個電子表格提交、搜索和更新到另一個電子表格(ID)
下一篇:函式存盤在記憶體中的什么位置?
