代码的结构如下:
def foo(dicc, cases):
if cases==1:
return dicc['a']
if cases==2:
return dicc['b']['c']
dicc
不可更改。我想消除cases
的类似开关的用法。我想在info={1:'a',2:'b'}
之类的函数之外创建一个字典并调用dicc[info[cases]]
,但它不适用于案例2.这是否意味着我必须为每个案例创建一个类?处理这个问题的常见做法是什么?
答案 0 :(得分:0)
不确定这是否是你想要的,但你可以尝试这个
info=[['a'], ['b', 'c']]
def foo(dicc, cases):
result = dicc
for k in info[cases-1]:
result = result[k]
return result