2016-07-27 19 views
2

Ich versuche, Daten in Python zu vergleichen. Kann mir jemand sagen, warum das nicht funktioniert?Vergleichen von Daten in Python

cursor = conn.cursor() 

tech = raw_input("Please enter your id number: ") 

cursor.execute("Select cust_id from client where tech_id = %s" % tech) 
rows = cursor.fetchall() 
day_num = datetime.datetime.today().weekday() 


dte = datetime.datetime.today() 
week = datetime.timedelta(days=5) 
service_inc = datetime.timedelta(days=14) 
friday = dte + datetime.timedelta(days=5) 
work = [] 
for row in rows: 
    client = row[0]; 
    cursor.execute("Select last_serviced from client where " \ 
    "cust_id= %s" % client) 
    ser_date = cursor.fetchone() 
    ser_date = ser_date[0] + service_inc 
    if dte <= ser_date <= friday: 
     work.append(client) 

Der Fehler ich weiterhin an bekommen datetime.datetime zu datetime.date nicht zu vergleichen. Danke für jede Hilfe im Voraus.

+0

Weil Sie versuchen, ein Datum mit einem Datum mit der Zeit zu vergleichen. Wann soll an diesem Tag das Datum sein? Fügen Sie dem Datum entweder eine Zeit hinzu oder entfernen Sie es aus der Datetime, * dann * führen Sie den Vergleich durch. – jonrsharpe

+4

http://stackoverflow.com/questions/7239315/cant-compare-datetime-datetime-to-timetime-date – user2853437

Antwort

-1

Es sieht wie ein Typfehler aus.

ser_date = cursor.fetchone() 

Das oben Genannte muss auf einen Datumstyp zum Vergleich eingestellt werden.