Ошибка 1. Использовать индексы там, где нужна распаковка
for item in data:
print(item[0], item[1])Код работает, но в больших задачах легко перепутать индексы. Лучше: for name, amount in data.
Ошибка 2. Забыть формат .2f
final_price = 127.99 * (1 - 17 / 100)
print(final_price)Для денег в выводе используйте {final_price:.2f}.
Ошибка 3. Неверная ширина таблицы
Если названия длинные, фиксированная маленькая ширина ломает таблицу. Найдите максимальную длину названия и добавьте запас.
Ошибка 4. Сумма не сбрасывается между клиентами
for client in clients:
total = 0
# считать покупки конкретного клиента здесь
Ошибка 5. Неправильный расчёт времени
Среднее время нужно считать в секундах, а затем переводить обратно в минуты и секунды.