Interrogation de classes

Disponible avec une licence Spatial Analyst.

Vous pouvez identifier un argument individuel qui a été utilisé dans un paramètre et, selon cette valeur, effectuer un ensemble de fonctions spécifique. Les sections suivantes présentent les règles d'interrogation des différents arguments des classes Spatial Analyst.

Classes créées avec un nombre fixe d'entrées

  • Pour interroger la valeur d'un argument dans un objet de classe, vous pouvez accéder à la propriété de l'objet.
    circle = NbrCircle(5, "CELL")
    
    # varRadius will be assigned the radius property (which is 5)
    varRadius = circle.radius
  • Vous pouvez vérifier facilement la valeur d'un objet ou une propriété d'un objet.
    >>> circle = NbrCircle(5, "CELL")
    >>> print(circle)
    Circle 5 Cell
    >>> print(circle.radius)
    5

Classes créées à partir de listes ou d'une liste de listes

  • Pour consulter toute la table de classification, vous pouvez utiliser la fonction d'impression Python.
    >>> remap = RemapValue([[1, 11], [2, 12], [3, 13]])
    >>> print(remap)
    1 11; 2 12; 3 13
    >>> print(remap.remapTable)
    [[1, 11], [2, 12], [3, 13]]
  • Pour interroger une entrée individuelle dans la liste dans le cas des objets de classe créés à partir de listes dans des listes, identifiez la liste contenant l'entrée et accédez à l'emplacement de l'entrée dans cette liste.
    >>> remap = RemapValue([[1, 11], [2, 12], [3, 13]])
    >>> print(remap.remapTable[1][1])
    12

Classes créées à partir d'une série de classes dans une liste

  • Pour interroger une coordonnée x ou y ou les coordonnées x,y d'un point dans une liste pour un objet de classe créé à partir d'une série de classes dans une liste, accédez à la propriété de la classe individuelle dans la série en entrée.
    >>> points = [Point(0, 5), Point(15, 175), Point(225, 450)]
    >>> # The following statement queries the x value of the second input point
    >>> xvalue = points[1].X
    >>> print(xvalue)
    15

Détermination du type

  • Pour déterminer le type d'un objet de classe, vous pouvez utiliser la fonction type Python.
    >>> neighborhood = NbrCircle(5, "CELL")
    >>> neighType = type(neighborhood)
    >>> print(neighType)
    <class 'arcpy.sa.ParameterClasses.NbrWedge'>
  • Pour comparer des types, vous pouvez utiliser la fonction isinstance Python.
    circle = NbrCircle(5, "CELL")
    
    # The general format is: isinstance(AnyObject, AnyClass)
    # In the following statement, val will be assigned True
    val = isinstance(circle, NbrCircle) 
    
    # In the following statement, val will be assigned False
    val = isinstance(circle, NbrRectangle)

Rubriques connexes