~ (Boolean Not) operator

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Performs a Boolean-complement (Not) operation on the cell values of the input raster.

Abbildung

Boolean Not illustration
OutRas = ~ Raster("InRas1")

Auswertung

The ~ operator will perform a Boolean Not operation when the input (operand) is a raster. If the input (operand) is a number, then the ~ operator will perform a Bitwise Not operation. For more information on how to work with operators, refer to Working with operators.

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 zur Operatorrangfolge finden Sie in der 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 boolesche Operatoren zuerst ausgeführt, wenn sie 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.

Only a single input is necessary for the Boolean evaluation to take place.

Wenn die Eingabewerte Gleitkommazahlen sind, werden sie durch Kürzung in einen Ganzzahlwert konvertiert, bevor der boolesche Vorgang ausgeführt wird. Die Ausgabewerte sind immer ganzzahlig.

Wenn die Eingabe ein Multiband-Raster ist, dann ist auch die Ausgabe ein Multiband-Raster. Der Operator führt den Vorgang für jedes Band in der Eingabe durch.

Syntax

~ in_raster_or_constant
OperandErklärungDatentyp
in_raster_or_constant

The input to use in the Boolean Not operation.

Raster Layer | Constant

Rückgabewert

NameErklärungDatentyp
out_raster

Das Ausgabe-Raster-Objekt.

Die Ausgabewerte sind entweder 0 oder 1.

Raster

Codebeispiel

~ (Boolean Not) example 1 (Python window)

This sample performs a Boolean Not (complement) operation on an input raster.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBooleanNot = ~ Raster("degs")
outBooleanNot.save("C:/sapyexamples/output/outboolnot.tif")
~ (Boolean Not) example 2 (stand-alone script)

This sample performs a Boolean Not (complement) operation on an input raster.

# Name: Op_BooleanNot_Ex_02.py
# Description: Performs a Boolean complement (NOT) operation on the
#              cell values of an input raster
# 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
inRaster = Raster("degs")

# Execute BooleanNot
outBooleanNot = ~ inRaster

# Save the output 
outBooleanNot.save("C:/sapyexamples/output/outboolnot")

Verwandte Themen