Загрузка данных


Запись о товаре — это фиксированный набор полей: название, цена, количество. Их не нужно менять по отдельности, поэтому кортеж подходит лучше списка — он неизменяемый и чётко показывает, что структура данных постоянная.

products = [("яблоки", 50, 100), ("бананы", 30, 150), ("апельсины", 70, 80)]

def get_names(products):
    names = []
    for name, price, qty in products:
        names.append(name)
    return names

def total_cost(products):
    total = 0
    for name, price, qty in products:
        total += price * qty
    return total

def add_product(products):
    data = input("Введите товар, цену и количество через запятую: ").split(",")
    if len(data) != 3:
        print("Ошибка: нужно ввести 3 значения!")
        return products
    products.append((data[0].strip(), int(data[1].strip()), int(data[2].strip())))
    return products

def sort_by_price(products):
    return sorted(products, key=lambda x: x[1])

print("Названия:", get_names(products))
print("Общая стоимость:", total_cost(products))

products = add_product(products)

print("По цене:")
for p in sort_by_price(products):
    print(p)