Le rôle de '#' dans un python 'if':

9

J'ai récemment exporté un modèle ArcGIS vers python et examinais le script et je suis confus par la ligne suivante:

if TRU_W_DatableFeatures == '#' or not TRU_W_DatableFeatures:

Quel est le rôle du '#'?

Kevin
la source

Réponses:

12

Vous remarquerez qu'il TRU_W_DatableFeaturess'agit d'une entrée facultative. Lorsque ArcGIS appelle un script Python avec des arguments facultatifs, il passe à la #place d'un argument facultatif qui n'a pas été rempli. En effet, les arguments Python sont positionnels.

Sinon, si vous appeliez ce script à partir de Python au lieu d'ArcGIS, vous ne pouvez pas définir TRU_W_DatableFeatures.

Cette ifinstruction vérifie donc l'existence de TRU_W_DatableFeatures, et tout ce qui se trouve dans cette ifinstruction ne sera exécuté que s'il TRU_W_DatableFeaturesexiste.

om_henners
la source