Это решение специфично для вашей проблемы и немного хакерское, но я проверил его, и, похоже, оно работает для меня.
Эта программа найдет магазин с наибольшим количеством продаж в течениепрошлый месяц.Эта программа предполагает, что месяцы приведены по порядку (данные не смешаны).Если это проблема, пожалуйста, измените вопрос, чтобы он был более конкретным, и я посмотрю, что я могу сделать.Одной из возможных реализаций этого является отслеживание каждого месяца с использованием dictionary
, а затем доступ к данным за последний месяц, чтобы найти максимум.
import re
def get_highest_sales(filename):
sales_during_month = [0, 0, 0, 0]
with open(filename) as f:
f.readline() # Skip first line
prev_month = ""
for line in f:
cleaned = re.sub(" +", ' ', line)
values = cleaned.split(' ')
month = values[0].split('-')[1]
if not month == prev_month:
prev_month = month
sales_during_month = [0, 0, 0, 0]
sales = [float(sale) for sale in values[1:]]
for store,sale in enumerate(sales):
sales_during_month[store] += sale
return "Store: " + str(sales_during_month.index(max(sales_during_month)) + 1)