~ (Boolean Not) (arcpy.sa)
Resumen
Performs a Boolean-complement (Not) operation on the cell values of the input raster.
Ilustración
Debate
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.
Cuando se utilizan varios operadores en una expresión, no necesariamente se ejecutan en orden de izquierda a derecha. El operador con el valor de jerarquía más alta se ejecutará primero. Para obtener más información sobre la jerarquía del operador, consulte la tabla jerarquía del operador. Puede utilizar paréntesis para controlar el orden de ejecución.
Los operadores booleanos (~, &, ^, |) tienen un nivel de jerarquía mayor que los operadores relacionales (<, <=, >, >=, ==, !=). Por lo tanto, cuando los operadores booleanos se utilizan en la misma expresión como los operadores relacionales, los operadores booleanos se ejecutan primero. Para cambiar el orden de la ejecución, utilice paréntesis.
Cuando varios operadores relacionales o booleanos se utilizan consecutivamente en una expresión simple, en algunos casos no se podrá ejecutar. Para evitar este posible problema, utilice los paréntesis apropiados en la expresión, de manera que el orden de ejecución de los operadores esté explícitamente definido. Para obtener más información, consulte Reglas de declaraciones complejas.
Only a single input is necessary for the Boolean evaluation to take place.
Si los valores de entrada son puntos flotantes, se convierten en valores enteros mediante el truncamiento antes de que se realice la operación booleana. Los valores de salida siempre son enteros.
Sintaxis
Operando | Explicación | Tipo de datos |
in_raster_or_constant |
The input to use in the Boolean Not operation. | Raster Layer | Constant |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_raster |
El objeto ráster de salida. Los valores de salida serán 0 o 1. | Raster |
Ejemplo de código
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")
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")
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute BooleanNot
outBooleanNot = ~ inRaster
# Save the output
outBooleanNot.save("C:/sapyexamples/output/outboolnot")