Используйте словарь с .split()
и int
, когда вы переносите отнять один элемент словаря и добавить к другому.
lst = ['name1 500', 'name2 200', 'name3 100', 'name4 400', 'name5 300']
lst2 = ['name1 100 name2', 'name2 50 name3', 'name3 25 name4', 'name5 100 name3', 'name4 75 name1']
dct = {i.split()[0]: int(i.split()[1]) for i in lst}
for i in lst2:
dct[i.split()[0]] -= int(i.split()[1])
dct[i.split()[-1]] += int(i.split()[1])
print(dct)
# {'name1': 475, 'name2': 250, 'name3': 225, 'name4': 350, 'name5': 200}
Печать строки для строки:
for i in dct:
print(f'{i} {dct[i]}\n')
name1 475
name2 250
name3 225
name4 350
name5 200