这是我的代码:
def empty_dic():
return lambda x: False
def add_elem(key, value, dic):
return lambda x: value if x == key else dic(x)
def check4key(dic, key):
return lambda x: True if x == key else dic(x)
dic = add_elem("brand", "audemars", add_elem("colour", "blue", empty_dic()))
print(check4key(dic, "colour")("colour"))
原则上,它按预期工作,但是如您所见,我需要解析lambda x
函数参数之外的check4key
值。这种破坏了我的check4key
函数的目的。有没有一种方法可以将lambda x
集成到函数的参数中?
为什么不这样:
check4key = lambda tuple: True if tuple[2] == tuple[1] else tuple[0][tuple[1]]
print(check4key(dic, "colour", "colour"))
也就是说,通常,您可以只将参数的元组传递给lambda
,然后在lambda
主体中显式解析它。但是,这开始成为您是否真的要使用lambda或函数的极端情况,这只是一个需要自己解决的问题。