【发布时间】:2022-12-24 21:01:45
【问题描述】:
我正在尝试找到一种创建字典的方法,以便我可以将值列表映射到适当的函数。
例如,我有一些看起来像这样的东西:
function_map = {('Put','Put','Call','Call'): FunctionOne,
('Put','Call','Combo'): FunctionTwo,
('Call','Put'):FunctionThree,
('Put','Combo'):FunctionFour}
我正在苦苦挣扎的是如何处理可以在键的任何排列中的查找值。
例如,我可能会尝试执行 function_map[(Call, Put, Call, Put)],我希望它返回 FunctionOne。或者 function_map[(Combo, Put)] 我希望返回 FunctionFour。
任何帮助表示赞赏!
【问题讨论】:
-
要么更改原始地图,要么创建一个中间地图,例如对元组中的条目进行排序。
-
作为一个愚蠢的替代方案,您可以初始化字典,其中键将是给定元组的所有可能排列,为每个键分配相同的函数并加入它们:
dict.fromkeys(permutations(('Put', 'Put', 'Call', 'Call')), FunctionOne) | dict.fromkeys(permutations(('Put', 'Put', 'Combo')), FunctionTwo)。
标签: python