Aprende Python · lección gratuita

Lección 05 · Booleanos y comparaciones

Resumen

Un booleano es un tipo de dato que solo tiene dos valores posibles: True (verdadero) y False (falso). Surgen de forma natural cuando comparamos cosas: ¿es un número mayor que otro?, ¿son dos textos iguales? El resultado de cualquier comparación es siempre un booleano, y ese valor es la base sobre la que más adelante construiremos decisiones con if.

Conceptos

El tipo bool representa la verdad o falsedad de una afirmación. Sus dos valores se escriben siempre con la primera letra en mayúscula: True y False. Si los escribieras en minúscula (true, false) Python daría un error, porque no los reconoce. Puedes asignarlos a variables igual que cualquier número o texto, y comprobar su tipo con type().

La forma más común de obtener un booleano es comparando dos valores. Una comparación pregunta algo cuya respuesta solo puede ser sí o no. Por ejemplo, 7 > 3 pregunta "¿es 7 mayor que 3?", y Python responde True. Es muy importante distinguir el operador == (dos signos igual, que compara) del operador = (un solo signo, que asigna un valor a una variable). Confundirlos es uno de los errores más frecuentes al empezar.

encendido = True          # un booleano guardado en una variable
print(type(encendido))    # <class 'bool'>

resultado = 10 > 4        # comparar produce un booleano
print(resultado)          # True

Las comparaciones también funcionan con texto. Cuando comparas dos strings con < o >, Python usa el orden de los caracteres (parecido al orden de un diccionario): las letras se comparan según su posición en el alfabeto. Y con == comprueba si dos textos son exactamente iguales, distinguiendo mayúsculas de minúsculas: "Hola" == "hola" es False.

Ejemplos

# Comparar números: el resultado siempre es True o False
print(5 == 5)        # True  (¿son iguales?)
print(5 != 3)        # True  (¿son distintos?)
print(8 < 2)         # False (¿8 es menor que 2?)
print(4 >= 4)        # True  (¿4 es mayor o igual que 4?)

# Comparar strings (sensible a mayúsculas)
print("Python" == "Python")   # True
print("abc" < "abd")          # True  (orden alfabético)

# Guardar el resultado de una comparación en una variable
edad = 20
es_mayor = edad >= 18
print(es_mayor)               # True
💡 Recuerda: == compara, = asigna. Si quieres preguntar "¿son iguales?" usa siempre los dos signos ==; un solo = intentaría guardar un valor y provoca confusiones.

Cheatsheet

OperadorSignificadoEjemploResultado
==igual a3 == 3True
!=distinto de3 != 4True
<menor que2 < 5True
>mayor que2 > 5False
<=menor o igual5 <= 5True
>=mayor o igual4 >= 9False
booltipo booleanotype(True)<class 'bool'>

---

← Cadenas de texto (strings)Condicionales: if, elif, else →

Ver todas las lecciones de Aprende Python →