laptop and a wrench

Bogue

In ArcGIS Pro, calculating the field values with the 'is' operator does not work if the corresponding value has spaces or special characters.

Dernière publication: July 8, 2021 ArcGIS Pro
Numéro d’ID de bogue BUG-000140734
EnvoiJune 15, 2021
Dernière modificationMarch 20, 2025
S’applique àArcGIS Pro
Version trouvée2.8
Système d’exploitationWindows OS
Version du système d’exploitation10.0 64 Bit
StatutWill Not Be Addressed

Informations supplémentaires

This is a quirk of the is the operator in Python (which checks whether two objects point to the same memory), and how strings are stored (equivalent alphanumeric strings like 'Texas' point to the same object in memory when invoked, strings such as 'South Dakota' do not point to the same object in memory. The top answer at https://stackoverflow.com/questions/16756699/is-operator-behaves-differently-when-comparing-strings-with-spaces describes this well). String equality has to be checked using == (which checks for value equality) for this reason.

Solution de contournement

It is to be noted other operators can be used in the scenario to return the results when matching them up with the fields having values of either spaces or some other special characters. 

Expression 1: 

def Reclass(value1): 

  if value1 == 'South Dakota': 

    return 1 

  else: 

    return 0 

Expression 2: 

def Reclass(value1): 

  if 'South Dakota' in value1: 

    return 1 

  else: 

    return 0 

Étapes pour reproduire

ID de bogue: BUG-000140734

Logiciel:

  • ArcGIS Pro

Recevoir une notification lorsque le statut d’un bogue change

Télécharger l’application Esri Support

En savoir plus sur ce sujet

Obtenir de l’aide auprès des experts ArcGIS

Contacter le support technique

Télécharger l’application Esri Support

Accéder aux options de téléchargement