Что-то все какие-то сложно перевариваемые решения постят.
Вот же понятно все и читабельно:
full = {company['id']: company for company in first_list}
for extra in second_list:
item = full.setdefault(extra['company'], {})
item.update(extra)
item.pop('id', None)
item.pop('alias', None)
result = list(full.values())
companiesDict = { n['id']: { k: n[k] for k in ('name', 'disabled') } for n in arr1 }
arr3 = [ { **n, **companiesDict.get(n['company'], {}) } for n in arr2 ]
d = {i: f'''{brand_list[i]} {quantity_list[i]} шт по цене {price_list[i]} руб. = {price_list[i] * quantity_list[i]} руб.''' for i, elem in enumerate(brand_list) if elem}
Попробуйте использовать json.dump и ensure_ascii=False внутри.
P.S. Существует разница между json.dump и json.dumps, изучите этот момент, чтобы лучше разобраться.
Попробуйте для каждого значения из json, которое вы хотите поместить в отдельную ячейку, собрать ключ, состоящий из имён всех ключей родительских элементов. Для списков это может быть индекс.
Я показывал такое вот в этом вопросе: Какой программой можно быстро сделать из json в csv?
А что вы конкретно хотите сделать? Я вижу что у всех элементов одинаковые ключи, а для обхода всех элементов есть цикл for, который для этого и сделан.