Я пытаюсь написать программу на python, в которой мы должны добавить числа из разных категорий и подкатегорий. Программа посвящена ежегодной продаже фермерами продукции на его ферме. Текстовый файл, из которого мы должны читать, имеет 4 категории. Первая категория - это тип продукта, например, овощи, фрукты, приправы. Вторая категория рассказывает нам о типе продукта, который мы имеем, например, о картофеле, яблоки, горячий соус. Третья категория рассказывает нам о продажах в 2014 году, а четвертая категория рассказывает нам о продажах в 2015 году. В этой программе нам нужно только рассчитать итоговые данные с номера 2015 года. Номера 2014 присутствуют в текстовом файле, но неактуальны.Анализ файлов с использованием запятых Python
Вот как выглядит текст файла
PRODUCT,CATEGORY,2014 Sales,2015 Sales
Vegetables,Potatoes,4455,5644
Vegetables,Tomatoes,5544,6547
Vegetables,Peas,987,1236
Vegetables,Carrots,7877,8766
Vegetables,Broccoli,5564,3498
Fruits,Apples,398,4233
Fruits,Grapes,1099,1234
Fruits,Pear,2342,3219
Fruits,Bananas,998,1235
Fruits,Peaches,1678,1875
Condiments,Peanut Butter,3500,3902
Condiments,Hot Sauce,1234,1560
Condiments,Jelly,346,544
Condiments,Spread,2334,5644
Condiments,Ketchup,3321,3655
Condiments,Olive Oil,3211,2344
Что мы хотим, чтобы сделать это, чтобы добавить продаж на 2015 год от продуктов, а затем общий объем продаж за все в 2015 году
Выход должен выглядеть следующим образом в письменном текстовом файле:
Всего продаж для овощей в 2015 году: {Вставка общее число здесь}
Общий объем продаж фруктов в 2015 году: {Insert общее число здесь}
Общий объем продаж Приправы в 2015 году: {Insert общее число здесь}
Общий объем продаж для фермеров в 2015 году: {Insert общее для всех продуктов, продаваемых в 2015 году}
наряду с этим, он должен также напечатать итог на экране Python запуска в среде IDE вместе с текстовым файлом:
Общие объем продаж для фермеров в 2015 году: {Insert общих для всех продуктов, продаваемых в 2015 году}
Вот мой код. Он работает, но печатает странную первую строку на выходе. Кроме того, я бы предпочел не использовать списки. Есть ли другой путь? Пожалуйста, не CSV, поскольку мы хотим использовать данные в виде текстового файла.
readFile = open("Products.txt", "r")
reportfile = open("report.txt", "w")
line = readFile.readline()
totalSum = 0
container = []
product =()
sum=0
for line in readFile:
line=line.strip()
line=line.split(",")
if line[0] not in container:
print(product,sum, file=reportfile)
product = line[0]
totalSum += int(line[3])
sum = 0
sum += int(line[3])
container.append(product)
elif product == line[0]:
totalSum += int(line[3])
sum += int(line[3])
print(totalSum, file=reportfile)
Пожалуйста, прочтите: Нам не разрешено использовать или преобразовывать файл в CSV. Его следует рассматривать как тестовый файл без использования CSV. –
Извините, что не можете использовать панды. –