我想知道是否有Python与此JavaScript结构等效的结构:
var myFunctions = {
'greet': function(name){
return "Hello, " + name;
},
'farewell': function(time){
return "See you " + time;
}
}
Run Code Online (Sandbox Code Playgroud)
所以我可以这样调用函数:
let greetMarta = myFunctions['greet']("Marta");
Run Code Online (Sandbox Code Playgroud)
您可以用来lambda定义非常简单的函数,例如这些内联函数;然而它们只能包含一个表达式:
my_functions = {
'greet': lambda name: "Hello {}".format(name),
'farewell': lambda time: "See you {}".format(time)
}
Run Code Online (Sandbox Code Playgroud)
对于任何更复杂的事情,您需要定义一个独立的函数,然后在字典中引用它:
def my_complex_function(param):
... logic ...
return whatever
my_functions = {
'complex_func': my_complex_function,
...
}
Run Code Online (Sandbox Code Playgroud)
为了调用该函数,您可以执行以下操作:
my_functions['my_complex_function'](param)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1911 次 |
| 最近记录: |