пытаясь получить общую сумму для каждой строки в списке, затем добавьте их все в конце, чтобы получить абсолютную общую стоимость

#python #list #math #2d

#питон #Список #математика #2d

Вопрос:

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

мне нужно получить общую стоимость записей на складе, чтобы получить общую сумму для каждой строки, а затем сложить их все, чтобы получить абсолютную общую стоимость в конце

в своем коде я смог получить общую стоимость записей, просто суммируя значение, предполагая, что на складе есть только одна запись, однако я не уверен, как получить сумму стоимости запасов * для каждой записи или строки в функции

вот мой код:

 def print_summary(): value = 0 for item in range(len(record_inventory_list)):  print(record_inventory_list[item][0], record_inventory_list[item][1], record_inventory_list[item][2], record_inventory_list[item][3], record_inventory_list[item][4], record_inventory_list[item][5], record_inventory_list[item][6], sep=' -gt; ')  value  = float(record_inventory_list[item][6])   print('nTotal Value of records: ', format(value, '.2f')) print('Amount of titles: ', len(record_inventory_list))  

Ответ №1:

Вы можете использовать понимание списка:

 def total_cost():  return sum(lst[5]*lst[6] for lst in record_inventory_list)   print(total_cost())  

Просто к вашему сведению, чище перебирать список напрямую, а не его индексы. Нравится:

 def print_summary():  value = 0  for item in record_inventory_list:  print(item, sep=' -gt; ')  value  = float(item[6])  return value