好的,这就是交易,假设我有一个函数(take_action),它调用另一个函数。但是我们不知道 take_action 会调用哪个函数。
由于这个问题,我已经弄清楚了那部分,问题是,在那个问题上,他们处理不带参数的函数,我的 take_action 可以采用彼此完全不同的几个不同函数之一,采取完全不同的动作,不同的论点。
现在看一些示例代码:
def take_action():
action['action']()
#does other stuff with 'other_stuff_in_the_dic'
def move(x,y):
#stuff happens
action = {'action': move, 'other_stuff_in_the_dic': 'stuff' }
(在这种情况下,“动作”将是移动,但就像我说的,它是根据某些用户输入动态分配的)
我想做的是这样的:
action = { 'action': move(2,3), 'other_stuff': 'stuff' }
(显然它在那里调用函数,因为它有(),因此它不起作用)
我只是一个初学者程序员,我唯一想到的是使用一个列表,它位于 dic 内的另一个键中,但这只会传递一个列表参数,而不是列表的每个内容都作为一个传递争论。
实现这一点的方法是什么,所以“action”键(或另一个键上的字典?)还存储了当我在 take_action 上调用它时应该使用的参数?