有没有可能在lambda表达式中添加字典的值?
也就是实现一个与下面方法类似的lambda函数。
def add_value(dict_x):
dict_x['a+b'] = dict_x['a'] + dict_x['b']
return dict_x
有没有可能在lambda表达式中添加字典的值?
也就是实现一个与下面方法类似的lambda函数。
def add_value(dict_x):
dict_x['a+b'] = dict_x['a'] + dict_x['b']
return dict_x
从技术上讲,您可以使用副作用来更新它,并利用.update
返回的 None
为假值,通过布尔运算返回基于字典的内容:
add_value = lambda d: d.update({'a+b': d['a'] + d['b']}) or d
不过,我并没有看到在真实代码中使用lambda或是你在问题中编写的函数的任何理由。
dict
,覆盖它的__setitem__
函数。请参阅Python文档。
class MyCustomDict(dict):
def __setitem__(self, key, item):
# your method here