def lat(dms) deg = !latTemp![0:2] min = !latTemp![2:4] sec = !latTemp![4:6] dms = deg + (min / 60) + (sec / 3600) return dms
lat( !latTemp!)
Solved! Go to Solution.
def lat( dms ): deg = float(str(dms)[0:2]) min = float(str(dms)[2:4]) sec = float(str(dms)[4:6]) dd = deg + (min / 60) + (sec / 3600) return dd
def lat(dms): # need to add colon deg = dms[0:2] min = dms[2:4] sec = dms[4:6] returnVal = deg + (min / 60) + (sec / 3600) return returnVal
Looks like just minor errors.
1. Need a colon after your function statement.
2. Reference the variable you pass containing the field value.def lat(dms): # need to add colon deg = dms[0:2] min = dms[2:4] sec = dms[4:6] returnVal = deg + (min / 60) + (sec / 3600) return returnVal
def lat( dms ): deg = dms[0:2] min = dms[2:4] sec = dms[4:6] dd = deg + (min / 60) + (sec / 3600) return dd
lat( !latdmsInt! )
def lat( dms ): deg = float(str(dms)[0:2]) min = float(str(dms)[2:4]) sec = float(str(dms)[4:6]) dd = deg + (min / 60) + (sec / 3600) return dd
Ah yes you'll need to manipulate the types a little. You are trying to do both string and math operations on the same data.def lat( dms ): deg = float(str(dms)[0:2]) min = float(str(dms)[2:4]) sec = float(str(dms)[4:6]) dd = deg + (min / 60) + (sec / 3600) return dd