根据另一个字典中的键增加字典中的值
increment value in dictionary based on key in another dictionary
我有一个 masterDict
字典,键从“1”到“8”,值设置为 0
{'1': 0, '2': 0, '3': 0, '4': 0, '5': 0, '6': 0, '7': 0, '8': 0}
我还有 anotherDict
用于查找包含最接近另一个值的值的键(我用不同的值多次执行此操作)。
这些其他值之一的示例是 value1 = 900
anotherDict
的一个例子是:
{'1': 74, '2': 938, '3': 28, '4': 10, '5': 100, '6': 33, '7': 45, '8': 99}
我用来在 anotherDict
中查找最接近 value1
的值的代码是:
closestValue1 = key, value = min(anotherDict.items(), key=lambda (_, v): abs(v - value1))
在这种情况下,closestValue1
returns:
{'2': 938}
如何将 masterDict
中的键 2
值增加 1?
因此,masterDict
将包含:
{'1': 0, '2': 1, '3': 0, '4': 0, '5': 0, '6':0, '7':0, '8': 0}
master_dict = {'1': 0, '2': 0, '3': 0, '4': 0, '5': 0, '6': 0, '7': 0, '8': 0}
another_dict = {'1': 74, '2': 938, '3': 28, '4': 10, '5': 100, '6': 33, '7': 45, '8': 99}
target_val = 900
target_key, _ = min(another_dict.items(), key=lambda x: abs(target_value-x[1]))
master_dict[target_key]+=1
print (master_dict)
我有一个 masterDict
字典,键从“1”到“8”,值设置为 0
{'1': 0, '2': 0, '3': 0, '4': 0, '5': 0, '6': 0, '7': 0, '8': 0}
我还有 anotherDict
用于查找包含最接近另一个值的值的键(我用不同的值多次执行此操作)。
这些其他值之一的示例是 value1 = 900
anotherDict
的一个例子是:
{'1': 74, '2': 938, '3': 28, '4': 10, '5': 100, '6': 33, '7': 45, '8': 99}
我用来在 anotherDict
中查找最接近 value1
的值的代码是:
closestValue1 = key, value = min(anotherDict.items(), key=lambda (_, v): abs(v - value1))
在这种情况下,closestValue1
returns:
{'2': 938}
如何将 masterDict
中的键 2
值增加 1?
因此,masterDict
将包含:
{'1': 0, '2': 1, '3': 0, '4': 0, '5': 0, '6':0, '7':0, '8': 0}
master_dict = {'1': 0, '2': 0, '3': 0, '4': 0, '5': 0, '6': 0, '7': 0, '8': 0}
another_dict = {'1': 74, '2': 938, '3': 28, '4': 10, '5': 100, '6': 33, '7': 45, '8': 99}
target_val = 900
target_key, _ = min(another_dict.items(), key=lambda x: abs(target_value-x[1]))
master_dict[target_key]+=1
print (master_dict)