for item in (l1 + l2):
    if item[key] in merged:
        merged[item[key]].update(item)
else:
    merged[item[key]] = item
return list(merged.values())
courses = merge_lists(user_course_score, courses, 'course_id')
Как объединить списки словарей