def sum_dict(**kwargs):
result = {}
total = 0
sum_keys = kwargs["sum"]
del kwargs["sum"]
for key, value in kwargs.items():
val = value()
result[key] = val
if key in sum_keys:
total += val
result["sum_" + "_".join(sum_keys)] = total
return result
print(sum_dict(a=lambda: 3,b=lambda: 2,c=lambda: 14, sum=["a", "b"]))
# {'a': 3, 'c': 14, 'b': 2, 'sum_a_b': 5}
简而言之:不
这必须在多条线路上完成:
使用函数创建dict并在名为sum的键中定义sum的键的名称:
无法从未创建的dict访问密钥。在
另一种方法是创建一个自己的dict类。在
使用函数参数:
更新在我发布上述代码后,问题发生了变化;使用jornsharpe的解决方案。在
相关问题 更多 >
编程相关推荐