En la programación, los datos son la materia prima con la que trabajamos. Cada vez que guardas información en una variable (ya sea el nombre de un usuario, el precio de un carrito de compra o si un ajuste está activado o desactivado), Python necesita saber con qué clase de información está tratando para saber qué puede hacer con ella.
En este tutorial vas a dominar los tipos de datos en Python fundamentales y los operadores que te permitirán manipularlos, sumar, comparar y tomar decisiones en tus programas.
Aquí tienes un vistazo rápido de cómo se ven los tipos de datos básicos interactuando entre sí:
# Un ejemplo de tipos de datos y operadores trabajando juntos
producto = "Teclado Mecánico" # Texto (str)
precio = 85.50 # Decimal (float)
cantidad = 2 # Entero (int)
tiene_descuento = True # Booleano (bool)
# Operador aritmético y de asignación
total = precio * cantidad
if tiene_descuento:
total = total - 10 # Restamos 10 euros si hay descuento
print(f"Total a pagar por {cantidad} {producto}: {total}€")
1. Los Tipos de Datos Primitivos en Python
Python cuenta con cuatro tipos de datos primordiales integrados que cubren el 95% de tus necesidades cotidianas al definir variables básicas.
A. Enteros (int)
Representan números enteros, ya sean positivos o negativos, sin decimales. En Python, a diferencia de otros lenguajes, no hay un límite de tamaño para los enteros más allá de la memoria disponible en tu ordenador.
edad = 29
temperatura_bajo_cero = -5
usuarios_activos = 14500
B. Decimales o de Punto Flotante (float)
Se utilizan para representar números reales que contienen una parte decimal. El separador decimal en Python es siempre el punto (.) y no la coma.
precio_dolar = 1.09
pi = 3.14159
peso_kg = 74.8
C. Cadenas de Texto o Strings (str)
Se usan para almacenar texto. Puedes escribirlas utilizando comillas simples (') o comillas dobles ("). Ambas son perfectamente válidas, pero la norma estándar recomienda elegir una y ser consistente en todo tu código.
nombre = "Alba"
saludo = 'Hola, desarrollador'
# Strings multilínea (con tres comillas)
mensaje_largo = """Este es un texto
que abarca varias líneas
sin necesidad de usar caracteres especiales."""
D. Booleanos (bool)
Solo pueden tomar dos valores: True (Verdadero) o False (Falso). Presta mucha atención a la escritura: en Python, la primera letra siempre debe ir en mayúscula. Escribir true o false en minúsculas provocará un error de sintaxis.
sesion_iniciada = True
pago_completado = False
2. El Poder de los Operadores en Python
Una vez que tenemos los datos, necesitamos manipularlos. Para eso sirven los operadores. En Python los clasificamos en tres grandes grupos esenciales.
A. Operadores Aritméticos
Permiten realizar operaciones matemáticas tradicionales.
| Operador | Operación | Ejemplo | Resultado |
|---|---|---|---|
+ | Suma | 10 + 5 | 15 |
- | Resta | 10 - 5 | 5 |
* | Multiplicación | 10 * 5 | 50 |
/ | División | 10 / 3 | 3.3333... (siempre devuelve un float) |
// | División Entera | 10 // 3 | 3 (descarta los decimales) |
% | Módulo (Residuo) | 10 % 3 | 1 (el resto de la división) |
** | Exponente (Potencia) | 2 ** 3 | 8 |
# Ejemplo de operadores matemáticos en acción
base = 10
altura = 3
area_triangulo = (base * altura) / 2
print(area_triangulo) # Imprime 15.0
B. Operadores de Comparación
Se utilizan para contrastar dos valores. El resultado de cualquier comparación siempre será un valor booleano (True o False).
==: Igual a. (Ojo: no lo confundas con un solo=, que sirve para asignar valores).!=: Diferente de.>y<: Mayor que y menor que.>=y<=: Mayor o igual que y menor o igual que.
puntuacion_actual = 95
puntuacion_minima = 70
# ¿Aprobó el examen?
ha_aprobado = puntuacion_actual >= puntuacion_minima
print(ha_aprobado) # Imprime True
C. Operadores Lógicos
Sirven para combinar varias comparaciones.
and(Y): DevuelveTruesolo si ambas condiciones son verdaderas.or(O): DevuelveTruesi al menos una de las condiciones es verdadera.not(NO): Invierte el valor booleano de la condición (si esTruelo convierte enFalse, y viceversa).
tiene_invitacion = True
esta_en_lista = False
# Para entrar necesita tener invitación o estar registrado
puede_entrar = tiene_invitacion or esta_en_lista
print(puede_entrar) # Imprime True
3. Conversión de Tipos de Datos (Type Casting)
En ocasiones, necesitas cambiar el tipo de una variable para poder operar con ella. Por ejemplo, cuando recibes un dato del usuario a través del teclado, Python siempre lo interpretará como una cadena de texto (str), aunque el usuario haya escrito un número.
Para solucionarlo, usamos las funciones de conversión integradas:
# Un string que contiene números
edad_texto = "25"
# Conversión a entero para poder realizar operaciones matemáticas
edad_numero = int(edad_texto)
siguiente_anio = edad_numero + 1
print(f"El año que viene tendrás {siguiente_anio} años.")
# También puedes convertir números a texto
precio_art = 19.99
precio_cadena = str(precio_art)
print("El precio es " + precio_cadena)
4. Errores Comunes de Tipo y Cómo Solucionarlos
Al trabajar con tipos de datos y operadores, uno de los errores más frustrantes para los principiantes es el famoso TypeError. Veamos cómo descifrarlo para corregirlo en segundos.
❌ Combinar texto y números sin convertir
# Código con error
edad = 25
mensaje = "Tengo " + edad + " años."
Error en consola: TypeError: can only concatenate str (not "int") to str.
- Por qué ocurre: Python es un lenguaje de tipado fuerte. No intentará adivinar qué quieres hacer y prohíbe sumar directamente un número con una cadena de texto.
- Solución: Convierte el número a texto usando
str(edad)o, mejor aún, utiliza una f-string para que Python lo maneje automáticamente por ti:
# Solución elegante
edad = 25
mensaje = f"Tengo {edad} años." # Funciona perfectamente
Conclusión y Siguiente Paso
Dominar los tipos de datos en Python y saber cómo manipularlos con los operadores adecuados es lo que te da el control real sobre la lógica de cualquier programa. Con estos cimientos, estás listo para dotar a tu código de verdadera interactividad y dinamismo.
El siguiente paso natural en nuestro roadmap es aprender a gestionar agrupaciones de datos más complejas, como las listas y diccionarios, o empezar a tomar caminos lógicos avanzados con las condicionales complejas.
No dejes de consultar nuestro roadmap completo de Python 2026 para seguir tu ruta con orden, y apóyate siempre en la documentación sobre los tipos integrados de Python oficiales cuando te surja alguna duda con un operador específico. ¡A programar!

