Zwischensummen bilden aus Liste
Verfasst: Samstag 7. Mai 2022, 11:17
Ich habe eine Tabelle und möchte eine Zwischensumme bilden. Dabei soll sich der Code an der ersten Spalte richten. Solange die erste Spalte einen Wert x hat, soll er aus der Spalte y die Werte aufaddieren. Wenn x1 zu x2 wird soll er eine neue Summe bilden. Anschliessend soll er die Summen mit Summe für x printen.
Ich kann zwar die Summe mit while bilden aber nur bis x1. Danach geht es nicht mehr weiter.
Muss da vielleicht eine Rekursion rein?
Ich kann zwar die Summe mit while bilden aber nur bis x1. Danach geht es nicht mehr weiter.
Code: Alles auswählen
import csv
with open(r"C:\Users\nobody\Desktop\x.csv") as einzulesende_datei:
datei=csv.reader(einzulesende_datei, delimiter=";")
liste=list(datei)
liste.pop(0)## um Header zu entfernen
zähler=0
ergebnis=[]
vorgänger=None
while zähler<len(liste):
zähler+=1
aktueller=liste[zähler-1][0]
if aktueller==vorgänger:
continue
if zähler>len(liste):
break
zahl=liste[zähler-1][18].replace(".","")
zahl_bereinigt_1=zahl.replace(",",".")
zahl_bereinigt_2=zahl_bereinigt_1.replace("-","")
zahl_liste=float(zahl_bereinigt_2)
ergebnis.append(zahl_liste)
vorgänger=aktueller
print("Ergebnis für",liste[zähler-1][0],sum(ergebnis)/12)