Python Arcmap

Не знаете, где задать вопрос? Задавайте здесь.
Ответить
Kostilio
Интересующийся
Сообщения: 20
Зарегистрирован: 01 июн 2016, 08:45
Репутация: 0

Python Arcmap

Сообщение Kostilio » 18 июл 2017, 20:36

Добрый день, помогите пожалуйста.
Задача в arcmap заменить в атрибутивной таблице в определенном столбце коды значениями из словаря. Коды могут идти через запятую или точку с запятой. С помощью field calculator'a получилось следующее:
def Reclass(FUNK_KOD):
dict = {
"3": "Тест1",
"4": "Тест2",
"5": "Тест3"
}
try:
names = FUNK_KOD.replace(',', ';').split(';')
my = ""
for name in names:
my += dict[name.strip()] + "; "
return my
except:
return "none"

Reclass(!FUNK_KOD!)

В принципе работает, только ";" в конце лишняя остается. Подскажите пожалуйста, как должен выглядеть код в окне Python, чтобы можно было указать конкретную таблицу, поле, в котором нужно провести вычисления. Я пробовал, но у меня выдает ошибку. И словарь получается очень большой в field calculator, очень много кодов, можно как-то его в отдельный файл добавить?

Ответить

Вернуться в «Я новичок!»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 12 гостей