El tipo booleano de Python es uno de los tipos de datos integrados de Python (built-in data types). Se utiliza para representar el valor de verdad de una expresión. Por ejemplo, la expresión 1 <= 2 es verdadera, mientras que la expresión 0 == 1 es falsa. Comprender cómo se comportan los valores booleanos de Python es importante para programar bien en Python.

1. El tipo booleano en Python

src/booleans.py

El tipo booleano de Python tiene solo dos valores posibles:

  1. True
  2. False

    >>> type(False)
    <class 'bool'>
    >>> type(True)
    <class 'bool'>
    

2. Booleanos de Python como palabras clave

Es posible asignar un valor booleano a las variables, pero no es posible asignar un valor a True:

>>> a_true_alias = True
>>> a_true_alias
True
>>> True = 5
  File "<stdin>", line 1
SyntaxError: cannot assign to True

3. Booleanos de Python como números

Los booleanos se consideran un tipo numérico en Python. Esto significa que son números para todos los efectos. En otras palabras, puede aplicar operaciones aritméticas a los booleanos y también puede compararlos con números:

>>> True == 1
True
>>> False == 0
True
>>> True + (False / True)
1.0

4. Operadores booleanos

Los operadores booleanos son aquellos que reciben booleanos como argumentos o entradas y retornan booleanos como resultado.

4.1. not

El único operador booleano con un argumento es not. Toma un argumento y retorna el resultado opuesto.

A not A
True False
False True

4.2. and

El operador and toma dos argumentos. Se evalua como False a no ser que las dos entradas sean True. El comportamiento se define en la siguiente tabla de la verdad:

A B A and B
True True True
False True False
True False False
False False False

4.3. or

El valor de la operacion or es True excepto cuando los dos operadores son False.

A B A or B
True True True
False True True
True False True
False False False

5. Operadores de comparación

Algunos de los operadores de Python comprueban si se mantiene una relación entre dos objetos. Dado que la relación se cumple o no se cumple, estos operadores, llamados operadores de comparación, siempre devuelven valores booleanos.

Los operadores de comparación son la fuente más común de valores booleanos.

5.1. Igualdad y desigualdad

Los operadores de comparación más comunes son el operador de igualdad (==) y el operador de desigualdad (!=). Es casi imposible escribir una cantidad significativa de código Python sin usar al menos uno de esos operadores.

El operador de igualdad (==) es uno de los operadores más utilizados en el código de Python. A menudo necesita comparar un resultado desconocido con un resultado conocido o dos resultados desconocidos entre sí.

print("1 == 1 ",1 == 1) # True
print("1 == 1.0 ",1 == 1.0)  # True
print("1 == 2 ",1 == 2) # False

print("1 != 2 ", 1 != 2) # True
print("not(1 == 2)",not(1 == 2)) # True
print("1 != (1 + 0.0) ",1 != (1 + 0.0)) # False

print("False != True",False != True) # True

5.2. Otros comparadores

Ejemplos:

x = 9
y = 1

x < y # False 
x > y # True
x == y # False

6. Encadenando operadores de comparación

Se pueden encadenar operadores de comparación

>>> 1 < 2 and 2 < 3
True

El resultado es True porque ambas partes de la cadena son True. Puedes romper la cadena para ver cómo funciona:

7. Enlaces externos