Lisää

ArcGIS -kenttälaskurin sisäkkäinen elif ei ole Ei toimi

ArcGIS -kenttälaskurin sisäkkäinen elif ei ole Ei toimi


Lasken kentän kahden muun ArcMap 10.2 -kentän perusteella pythonilla.

Pre-Logic Script Code on

def myfunc (legenda, Btype):

if (legend == 'Apple'): return 'Banana' elif (legend == 'Cranberry'): return 'Date' elif (selite == 'Elderberry'): if (Btype.startswith ('Fig')): palauta 'Rypäle' elif (Btype.startswith ('Lychee')): palauta 'Mango' elif Btype ei ole mitään: palauta 'Oliivi' muu: palauta 'Päärynä' muu: palauta 'Vadelma'

Useimmiten tämä toiminto toimii, mutta jos legenda on "Elderberry" ja Btype on "Null", funktio palauttaa "Null" eikä "Olive"

Ongelma ilmenee vain, kun laitan if is -lauseeseen "is None".


Siirrä "ei mitään" -valintasi ensimmäiseen arviointiin.

jos Btype ei ole mitään: palauta Olive -elif (Btype.startswith ('Fig')): palauta 'Grape' elif (Btype.startswith ('Lychee')): palauta 'Mango'

Pohjimmiltaan, jos Btype on nolla, et voi tehdä .startswithia jne. Sillä.