У меня есть два списка словарей, названных как category и sub_category.
category = [{'cat_id':1,'total':300,'from':250},{'cat_id':2,'total':100,'from':150}]
sub_category = [{'id':1,'cat_id':1,'charge':30},{'id':2,'cat_id':1,'charge':20},{'id':3,'cat_id':2,'charge':30}]
Я хочу изменить значение для charge
на 0
в sub_category, если значение total >= from
в category
, где cat_id
равны.
Ожидаемый результат:
sub_category = [{'id':1,'cat_id':1,'charge':0},{'id':2,'cat_id':1,'charge':0},{'id':3,'cat_id':2,'charge':30}]
Мне удалось получить результат с помощью этого
for sub in sub_category:
for cat in category:
if cat['cat_id'] == sub['cat_id']:
if cat['total'] >= cat['from']:
sub['charge']=0
Но я хочу знать лучший способ сделать это. Любая помощь будет принята с благодарностью.