Ich versuche, ein Batch-Lesen der CSV-Datei zu tun und den Batch durch einen Rückruf zu verarbeiten.Python Batch-Lesung von CSV-Datei
import csv
with open('file.csv', 'r') as csvfile:
reader = csv.reader(csvfile)
header = next(reader) # skip header
batch_size = 3
batch = []
count = 0
for row in reader:
if count >= batch_size:
do_something(batch)
batch = []
count = 0
batch.append(row)
count += 1
Lassen Sie uns die CSV-Datei hat 10 Zeilen übernehmen (ohne Header) und ein batch_size 3. Das erwartete Ergebnis sollte 4 Chargen sein. 3 Chargen mit 3 Reihen und die 4. Charge enthält nur die 1 Reihe. Der Code, den ich schrieb, produziert nur 3 Chargen. Wenn die Losgröße 1/2/5/10 ist, ist alles in Ordnung.