dimanche 17 janvier 2021

python jumps to wrong statement after if [closed]

Python jumps to unexpected line, cannot explain why.

afstand1 = 3000
maxafstand =  10000

The first if statement jumps immediately to the last if statement (if routerow.srcmultilock:) Indenting is ok. if I change the if statement to if False: it works fine. In debugger afstand1>maxafstand returns False

'''

if afstand1 > maxafstand:
#if False:
    return -1, srcselect, nextleg, legprev_prevleg

# ligt de eindtijd van de voorgaande leg plus reistijd na begintijd in te voegen leg?
if legprevslot[EIND] > dstslot[BEGIN]:
    # vroegste begintijd binnen dstslot niet mogelijk, laatste begintijd proberen
    if dstslot[EIND] - dstslot[TIJDDUUR] * 60 - tijd1 * 60 > legprevslot[EIND]: return -1, srcselect, 
       nextleg, legprev_prevleg
# is de totale omweg groter t.o.v. de leg groter dan de maximale afstand tussen twee dst's?
if afstand1 + afstand2 - afstand0 > maxafstand: return -1, srcselect, nextleg, legprev_prevleg

# tenslotte: tussenvoegen is in principe mogelijk

# kleinste totaalafstand naar en van de tussen te voegen dst
if afstand1 + afstand2 < afstand_tot: afstand_tot = afstand1 + afstand2

if routerow.srcmultilock:
    # eventuele meerdere src's op deze route moeten verplicht bij elkaar blijven
    srcselect.append(srckey)
else:
    # indien meer dan 1 src in deze leg: de geselecteerde leg wordt ondergebracht in een nieuwe route
    # die straks een pointer krijgt naar de huidige leg
    srcselect = [srckey]
    if len(leg.srckey) > 1:
        # nextleg = [routerow.rtkey, legrow]
        nextleg = {'rtkey': routerow.rtkey, 'legrow': legrow}

'''

Aucun commentaire:

Enregistrer un commentaire