Я недавно экспортировал модель ArcGIS в python и просматривал скрипт, и меня смущает следующая строка:
if TRU_W_DatableFeatures == '#' or not TRU_W_DatableFeatures:
Какова роль «#»?
Вы заметите, что TRU_W_DatableFeatures
это необязательный вход. Когда ArcGIS вызывает скрипт Python с необязательными аргументами, он передается #
вместо необязательного аргумента, который не был заполнен. Это потому, что аргументы Python являются позиционными.
В противном случае, если вы вызывали этот скрипт из Python вместо ArcGIS, вы (возможно) не установили TRU_W_DatableFeatures
.
Таким образом, это if
утверждение проверяет существование TRU_W_DatableFeatures
, и все, что находится в этом if
утверждении, будет выполнено, только если оно TRU_W_DatableFeatures
существует.