!= (Not Equal) (arcpy.sa)

Zusammenfassung

Returns 1 for cells where the first raster is not equal to the second raster and 0 for cells where it is equal.

Bild

No Equal To (Relational) operator illustration
OutRas = Raster("InRas1") != 2

Diskussion

Returns 1 for cells where the first raster does not equal the second raster and 0 for cells where it does.

Bei Verwendung eines Operators mit einem Eingabe-Raster ist das Ergebnis ein Raster. Wenn jedoch alle Eingaben Zahlen sind, dann ist das Ergebnis ebenfalls eine Zahl.

Wenn in einem Ausdruck mehrere Operatoren verwendet werden, werden sie nicht zwingend von links nach rechts ausgeführt. Vielmehr wird der Operator mit dem höchsten Vorrangswert zuerst ausgeführt. Weitere Informationen zu Operatorrangfolge finden Sie unter +++Operatorrangfolgentabelle. Sie können die Reihenfolge der Ausführung jedoch mithilfe von Klammern steuern.

Boolesche Operatoren (~, &, ^, |) haben eine höhere Vorrangstufe als relationale Operatoren (<, <=, >, >=, ==, !=). Daher werden die booleschen Operatoren zuerst ausgeführt, wenn boolesche Operatoren im gleichen Ausdruck wie relationale Operatoren verwendet werden. Verwenden Sie Klammern, um die Reihenfolge der Ausführung zu ändern.

Wenn mehrere relationale und/oder boolesche Operatoren hintereinander in einem einzelnen Ausdruck verwendet werden, kann die Ausführung in Einzelfällen fehlschlagen. Um dieses potenzielle Problem zu vermeiden, verwenden Sie in dem Ausdruck geeignete Klammern, damit die Reihenfolge für die Ausführung der Operatoren explizit definiert ist. Weitere Informationen finden Sie unter +++Regeln für komplexe Anweisungen.

Zwei Eingaben sind notwendig, damit diese Auswertung stattfindet.

Für diesen Operator ist die Reihenfolge der Eingabe irrelevant.

Syntax

in_raster_or_constant1 != in_raster_or_constant2
OperandErläuterungDatentyp
in_raster_or_constant1

The input that will be compared to for inequality by the second input.

Wenn eine der Eingaben ein Raster und die andere ein Skalarwert ist, wird ein Ausgabe-Raster erstellt, wobei die Auswertung für jede Zelle im Eingabe-Raster durchgeführt wird.

Raster Layer | Constant
in_raster_or_constant2

The input that will be compared from for inequality by the first input.

Wenn eine der Eingaben ein Raster und die andere ein Skalarwert ist, wird ein Ausgabe-Raster erstellt, wobei die Auswertung für jede Zelle im Eingabe-Raster durchgeführt wird.

Raster Layer | Constant

Rückgabewert

NameErläuterungDatentyp
out_raster

Das Ausgabe-Raster-Objekt.

Where cell values in the first input and second inputs are not equal, the output cell value will be 1. If the values are equal, the output value will be 0.

Raster

Codebeispiel

!= (Not Equal) example 1 (Python window)

This sample performs a Not Equal operation on two input rasters.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNotEqual = Raster("degs") != Raster("negs")
outNotEqual.save("C:/sapyexamples/output/outne")
!= (Not Equal) example 2 (stand-alone script)

This sample performs a Not Equal operation on two input rasters.

# Name: Op_NotEqual_Ex_02.py
# Description: Performs a relational not-equal operation on two
#              inputs on a cell-by-cell basis
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster1 = Raster("degs")
inRaster2 = Raster("negs")

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute NotEqual
outNotEqual = inRaster1 != inRaster2

# Save the output 
outNotEqual.save("C:/sapyexamples/output/outnotequal")

Umgebung

Verwandte Themen

4/26/2014