【发布时间】:2020-09-13 22:29:21
【问题描述】:
我是编程新手。我试图弄清楚如何从“实际”中减去“预算”,然后使用嵌套的 for 循环将值更新为“方差”。但是,我读过在迭代时更改字典并不是最佳实践。到目前为止,我一直不知道如何进行。
for i in properties:
for j in properties[i]:
if j == "actual":
sum = properties[i][j]
print('\nActual:' , sum)
if j == "budgeted":
sum_two = properties[i][j]
print('Budgeted:' , sum_two)
diff = sum_two - sum
print('Variance:', diff)
default_value = 0
properties = {587: {'prop_name': 'Collington'}, 'rental_income': {'apartment_rent': '5120-0000', 'resident_assistance': '5121-0000', 'gain_loss': '5120-0000'}, 51200000: {'actual': 29620, 'budgeted': 30509, 'variance': default_value}, 51210000: {'actual': 25620, 'budgeted': 40509, 'variance': default_value}, ............
【问题讨论】:
-
您可以在迭代字典时更新字典中的值。您不应该做的是删除或插入新值。
标签: python dictionary for-loop nested