Вывод совокупной стоимости

Подскажите пожалуйста, дана задача: Написать программу, в которой пользователь с клавиатуры заполняет словарь с ключами: материал, стоимость единицы, количество, фио заказчика. Вывести после заполнения общее количество всех различных материалов (заполнить так, чтобы строки с одинаковыми материалами повторялись некоторые) и их совокупную стоимость.

choice = 1
while choice != 'нет':
    choice = 0
    name = input('Введите имя ключа: ')
    material = input('Введите материал: ')
    stoim = input('Введите стоимость единицы: ')
    kolvo = input('Кол-во: ')
    fio = input('ФИО заказчика: ')
    total = material, stoim, kolvo, fio
    d = {}
    d = {name: total}
    choice = input('Хотите продолжить заполнение? да/нет')
    if choice == 'да':
        newname = input('Введите имя ключа: ')
        material = input('Введите материал: ')
        stoim = input('Введите стоимость единицы: ')
        kolvo = input('Кол-во: ')
        fio = input('ФИО заказчика: ')
        total = material, stoim, kolvo, fio
        choice = input('Хотите продолжить заполнение? да/нет')
        d = {newname:total}
    print(d)

Написал такой код, но проблема в следующем: Не могу понять как можно вывести совокупную стоимость?


Ответы (1 шт):

Автор решения: Елисей Ионов
d = {}
while choice != 'нет':
    choice = 0
    name = input('Введите имя ключа: ')
    material = input('Введите материал: ')
    stoim = input('Введите стоимость единицы: ')
    kolvo = input('Кол-во: ')
    fio = input('ФИО заказчика: ')
    total = material, stoim, kolvo, fio
    d[name] = total
    choice = input('Хотите продолжить заполнение? да/нет')
    if choice == 'да':
        newname = input('Введите имя ключа: ')
        material = input('Введите материал: ')
        stoim = input('Введите стоимость единицы: ')
        kolvo = input('Кол-во: ')
        fio = input('ФИО заказчика: ')
        total = material, stoim, kolvo, fio
        choice = input('Хотите продолжить заполнение? да/нет')
        d = {newname:total}
print(d)

stoimost = {}
for k in d:
    i = d[k]
    if stoimost.get(k) == None:
        stoimost[k] = float(i[1]) * int(i[2])
    else:
        stoimost[k] += float(i[1]) * int(i[2])
print("----------price list------------")
for material in stoimost:
    print("{}:{}".format(material, stoimost[material]))
→ Ссылка