⚖️ Учебные решения и современный стиль

⚡ Кратко

Решения из источника актуальны: циклы, распаковка и f-strings — нормальный базовый стиль. Современные улучшения нужны для читаемости: имена вместо индексов, функции для повторяющихся расчётов, генераторные выражения там, где они не скрывают логику.

Индексы vs распаковка

Менее читаемо

for item in data:
    if item[1] > 10:
        print(item[0], item[1])

Лучше

for name, amount in data:
    if amount > 10:
        print(name, amount)

Дублирование формата vs переменные ширины

В таблицах не стоит вручную подгонять пробелы. Лучше задать ширину полей в f-string.

print(f"{name:<15} | {price:>10.2f}")

Большая задача vs маленькие шаги

Задачи 5–7 легче решать по слоям: сначала данные, затем расчёты, затем текст. Не смешивайте все действия в одной длинной строке.

Функции для повторяемой логики

def discounted_price(price, discount):
    return price * (1 - discount / 100)
Проверить по документации: функции и type hints можно использовать для улучшения структуры, но исходный практикум решается без вынесения логики в функции.