Я новичок в написании сценариев на Python и в основном использую его в ArcGIS 10. Предполагается, что мой сценарий переформатирует строку в поле CINTP1. Примером может быть «000000100» и возврат «1.00». Я импортировал его в панель инструментов для запуска выбранной записи в таблице «MAPCHAR». Ошибка, которую я продолжаю получать:
: ОШИБКА 000539: Ошибка выполнения выражения: removeLeadingZeros("000000100") : глобальное имя 're' не определено Не удалось выполнить (CalculateField).
Не удалось выполнить (скрипт).
Вот мой сценарий:
import arcpy, re, sys, string, os
MAPCHAR = "MAPCHAR"
CINPT1 = "CINPT1"
expression = "removeLeadingZeros(!CINPT1!)"
codeblock = """def removeLeadingZeros(myValue):
newValue = re.sub('^0+',"",myValue)
valueList = list(newValue) #convert newValue to List
valueList.insert(-2, '.') #insert the '.' characater int the list at the -2 position
newValue = "".join(valueList) #join back to create the new updated string
myvalue = newValue"""
arcpy.CalculateField_management(MAPCHAR, CINPT1, expression, "Python", codeblock)
Любая помощь будет оценена .. спасибо,
codeblock
.. - person Rohit Jain   schedule 04.10.2012