¿Qué es un booleano?
En programación, un booleano es un tipo de dato con exactamente dos valores, verdadero y falso. Los programas obtienen booleanos de comparaciones como age >= 18 y los usan para decidir qué código se ejecuta, en sentencias if y en condiciones de bucles.
Actualizado el 24 de septiembre de 2026
Cada decisión que toma un programa se reduce a una pregunta con dos respuestas posibles: si la contraseña es correcta, si el carrito está vacío, si el temporizador ha llegado a cero. El booleano es el tipo de dato que guarda esas respuestas. Debe su nombre a George Boole, un matemático inglés que describió un álgebra de valores verdaderos y falsos en libros publicados en 1847 y 1854.
De dónde salen los booleanos
Pocas veces escribes True o False directamente. La mayoría de los booleanos los producen las comparaciones, que hacen una pregunta sobre dos valores y responden con un booleano:
| Operador | Significado | Ejemplo | Resultado |
|---|---|---|---|
== | igual a | 3 == 3 | True |
!= | distinto de | 3 != 3 | False |
<, > | menor que, mayor que | 2 < 5 | True |
<=, >= | como mucho, como mínimo | 17 >= 18 | False |
Un booleano se puede guardar en una variable como cualquier otro valor y combinar con otros booleanos:
False
<class 'bool'>
False
True
Combinar booleanos: and, or, not
Tres operadores lógicos construyen condiciones más grandes a partir de otras más pequeñas. and es verdadero solo cuando los dos lados son verdaderos. or es verdadero cuando al menos un lado es verdadero. not invierte un único valor.
a | b | a and b | a or b | not a |
|---|---|---|---|---|
True | True | True | True | False |
True | False | False | True | False |
False | True | False | True | True |
False | False | False | False | True |
Python escribe estos operadores como palabras. C, Java y JavaScript usan símbolos: && para and, || para or, ! para not. Los cuatro lenguajes dejan de evaluar en cuanto se conoce la respuesta, así que en a and b el lado derecho nunca se comprueba cuando a es falso. Esto se llama evaluación en cortocircuito. La guía de operadores lógicos en Python lo explica en detalle.
Cómo controlan los booleanos un programa
Una sentencia if ejecuta su bloque solo cuando su condición es verdadera. Un bucle while repite su bloque mientras su condición siga siendo verdadera, así que cada bucle lo mueve un booleano que se vuelve a comprobar antes de cada vuelta. Esa repetición se llama iteración.
Hot day
Countdown: 3
Countdown: 2
Countdown: 1
Cuando count llega a 0, la condición count > 0 pasa a ser False y el bucle termina. Si la condición nunca pudiera volverse falsa, el bucle se ejecutaría para siempre.
Los booleanos como 1 y 0
Un booleano solo necesita un bit de información: 1 para verdadero, 0 para falso. En la práctica, los lenguajes guardan un booleano en al menos un byte entero, porque el byte es la unidad de memoria más pequeña que tiene su propia dirección. En C, un bool de <stdbool.h> ocupa 1 byte con gcc y clang. Los programas que necesitan millones de indicadores meten 8 en cada byte con operadores a nivel de bits.
Los lenguajes no se ponen de acuerdo en si un booleano es también un número. En Python, bool es una subclase de int, así que True es igual a 1 y False es igual a 0. Eso facilita contar:
True True
2
3 correct
JavaScript también da 2 para true + true. C no tuvo tipo booleano hasta C99 y sigue tratando cualquier número distinto de cero como verdadero. Java es estricto: if (1) no compila, porque en Java una condición tiene que ser un boolean.
Valores truthy y falsy
Python y JavaScript te dejan usar cualquier valor como condición, no solo True y False. Los valores que cuentan como falsos se llaman falsy; todos los demás son truthy.
0 -> False
42 -> True
'' -> False
'False' -> True
[] -> False
[0] -> True
None -> False
En Python, el cero, los strings vacíos, las colecciones vacías y None son falsy. El string "False" es truthy, porque es un string con cinco caracteres dentro. JavaScript tiene sus propios valores falsy, entre ellos false, 0, "", null, undefined y NaN, y allí un array vacío [] es truthy. Consulta truthy y falsy en JavaScript para ver todas las reglas.
Errores comunes
Comparar con True. if is_ready == True: funciona, pero if is_ready: dice lo mismo con menos que leer. Para el caso falso, escribe if not is_ready:.
Tratar un texto como booleano. Lo que llega de un usuario, un archivo o un formulario es un string, así que bool("false") es True. Compara el texto en su lugar: answer == "yes".
Mayúsculas incorrectas. Python escribe True y False; JavaScript, Java y C escriben true y false. Escribir true en Python da NameError: name 'true' is not defined.
Nombres poco claros. Nombra un booleano como una pregunta de sí o no, por ejemplo is_valid, has_access o can_edit, para que una condición se lea como una frase: if user.can_edit:.
Qué leer después
Los booleanos deciden cuántas veces se ejecuta un bucle, así que qué es la iteración es la siguiente página natural, y qué es un bit muestra el 0 y el 1 que hay debajo de cada verdadero y falso. Para los detalles de Python, lee números y booleanos y después practica las condiciones en el curso de Python.
Preguntas frecuentes
¿Qué es un ejemplo de booleano?
5 > 3 es una expresión booleana, y su valor es True. Una variable como is_logged_in = False guarda un valor booleano. En el catálogo de una biblioteca, la búsqueda cats AND dogs es una consulta booleana que usa la misma lógica.¿Un booleano es 1 o 0?
True == 1 es True, y en C cualquier número distinto de cero cuenta como verdadero. Java los mantiene separados: un boolean de Java no se puede usar como número en absoluto.¿Un booleano es solo sí o no?
¿Qué es un booleano en Python?
bool, y sus dos valores son True y False, escritos con mayúscula. bool es una subclase de int, así que True se comporta como 1 en operaciones aritméticas. La función bool() convierte cualquier valor en True o False según las reglas de veracidad de Python.¿Qué es una búsqueda booleana?
python AND tutorial exige las dos palabras, python OR java acepta cualquiera de ellas y python NOT snake excluye las páginas con la segunda palabra. Los catálogos de bibliotecas y las bases de datos académicas la admiten directamente, y Google acepta OR y un signo menos para NOT.