Hallo,
Ik ben op m'n ouwe dag druk aan het experimenteren met python. En dat lukt meestal wel aardig.
Maar het volgende wil niet en ik zie het even niet meer, vandaar graag wat hulp.
Ik ben een csv bestand van de bank aan het omzetten naar een bestand wat ik in mijn MySQL base kan laden. Ik heb hiervoor (met dank Caspar!) het progje van Caspar Verhey gebruikt en het aangepast aan mijn wensen. En dat ging goed, maar was een waslijst met if's en ik dacht dat dat beter moest kunnen.
De code: for row in inputReader:
regels = ['Auto','Brandstof auto',' tinq ',' shell ',' tank s ',' dap ',' slump oil ','q8 ','brand oil',' bp lemmer '],
['Huishouden','Boodschappen',' poiesz ',' spar ','super de boer','c 1000',' aldi ',' albert heyn ','breimer ',' keurslager',' bakkerij ']
for i, item in enumerate(regels):
for t, zoekterm in enumerate(regels[i):
if( zoekterm in str(row[7]).lower()):
in_rubriek = regels[i,0]; in_grootboek = regels[i,1]
uit_row = [ uit_datum, uit_reknr, uit_begunstigde, uit_tegenrek, uit_bedrag, uit_code, uit_rubriek, uit_grootboek , uit_omschrijving]
outputWriter.writerow(uit_row)
Ik loop hierbij alle regels van het csv bestand door en wil vervolgens per regel een woord zoeken uit 'regels' (index 2:). Indien gevonden worden velden met index 0 en 1 toegevoegd.
Dus ik zoek iedere regel achtereenvolgens door voor bijv. tinq en shell etc en indien gevonden wordt Auto en 'Brandsof auto' toegevoegd.
Het stukje code met de for etc. is het probleemstukje.
Wie ziet waar deze hobbyist fout gaat?
Alvast bedankt
Bauke de Vries