Hilfe bei Import von Excel und for Schleifen-Iteration
Verfasst: Freitag 5. März 2021, 16:19
Hallo zusammen,
ich bin neu hier im Forum und auch Anfänger was die Programmierung mit Python anbelangt.
Ich nutze Spyder als Oberfläche und habe folgendes Problem.
Falls das jemandem etwas sagt, möchte ich mit Gurobi arbeiten.
Zuerst habe ich ein Excel File eingelesen
mit dem Befehl
wird korrekt die Tabelle und die Zeilenanzahl ausgegeben.
Als erstes wollte ich mich mit dem "DLD"-Eintrag befassen, einer Zeitabgabe in der Excel-Tabelle, die als Stunde:Minute:Sekunde angeben ist. Und diesen in Sekunden von 0:00:00 Uhr aus gesehen ausgeben lassen für jede Zeile in meinem Tabellen-Dokument.
Bereits nach der "for" Zeile bekomme ich bei der run current line Option einen "expected an indented block" IndentationError. die nachfolgeneden Zeilen sind 4 spaces/1tab eingerück
Außerdem ebkomme ich einen KeyError: 'D'
Desweiteren scheint er die Klasse datetime nicht zu erkennen, was kann ich hier tuen?
I finde einfach selbst nicht heraus was ich falsch mache.
Hilfe wäre eine extreme Erleichterung und ich würde mich sehr freuen wenn jemand der sich besser auskennt als ich eine Lösung beisteurern kann.
Grüße
Deside
ich bin neu hier im Forum und auch Anfänger was die Programmierung mit Python anbelangt.
Ich nutze Spyder als Oberfläche und habe folgendes Problem.
Falls das jemandem etwas sagt, möchte ich mit Gurobi arbeiten.
Zuerst habe ich ein Excel File eingelesen
Code: Alles auswählen
import gurobipy as gp
import time
from gurobipy import GRB
import pandas as pd
data = pd.read_excel (r'C:\Users\....\Eingabedaten.xlsx')
df = pd.DataFrame(data, columns= ['n','FMLZ','SMLZ', 'Kat', 'N?', 'DLD', 'RBL'])
Code: Alles auswählen
print (df)
print('len',len(df))
Als erstes wollte ich mich mit dem "DLD"-Eintrag befassen, einer Zeitabgabe in der Excel-Tabelle, die als Stunde:Minute:Sekunde angeben ist. Und diesen in Sekunden von 0:00:00 Uhr aus gesehen ausgeben lassen für jede Zeile in meinem Tabellen-Dokument.
Code: Alles auswählen
for counter in range(0,len(df)):
print(counter)
t=df['DLD'[counter]]
print(t)
seconds = int(datetime.timedelta(hours=t.hour,minutes=t.minute,seconds=t.second).total_seconds())
print(second)
Außerdem ebkomme ich einen KeyError: 'D'
Desweiteren scheint er die Klasse datetime nicht zu erkennen, was kann ich hier tuen?
I finde einfach selbst nicht heraus was ich falsch mache.
Hilfe wäre eine extreme Erleichterung und ich würde mich sehr freuen wenn jemand der sich besser auskennt als ich eine Lösung beisteurern kann.
Grüße
Deside