🐍 Tipos de Datos y Operadores en Python: Guía Clara para Principiantes [2025]
Tipos de datos primitivos
Python es un lenguaje de tipado dinámico, lo que significa que no es necesario declarar el tipo de una variable al momento de definirla. El intérprete determina automáticamente el tipo según el valor asignado.
Números
Existen tres tipos principales:
- int: enteros (5, -10, 0)
- float: decimales (3.14, -0.001)
- complex: números complejos (1+2j)
python
entero = 42
decimal = 3.1416
complejo = 2 + 3j
Puedes usar funciones como type() para comprobar el tipo:
python
print(type(entero)) # <class 'int'>
Booleanos
Solo existen dos valores booleanos en Python:
python
verdadero = True
falso = False
Se usan para tomar decisiones en condiciones (if, while, etc.). Internamente, True equivale a 1 y False a 0.
Cadenas (str)
Son secuencias de caracteres:
python
texto = "Hola, Python"
nombre = 'Roberto'
multilinea = """Esto
es un texto
de varias líneas"""
Puedes concatenar, repetir y usar formato:
python
nombre = "Roberto"
saludo = f"Hola, {nombre}" # f-strings desde Python 3.6
Colecciones: estructuras de datos fundamentales
Listas
Estructura mutable y ordenada. Permite elementos repetidos y de distintos tipos.
python
frutas = ["manzana", "pera", "plátano"]
frutas.append("naranja")
Soporta slicing:
python
print(frutas[1:3]) # ['pera', 'plátano']
Tuplas
Estructura inmutable. Útil para representar datos fijos.
python
coordenadas = (10.5, 20.3)
Se puede desempaquetar fácilmente:
python
x, y = coordenadas
Sets
Colección no ordenada y sin duplicados.
python
numeros = {1, 2, 3, 2, 1}
print(numeros) # {1, 2, 3}
Soporta operaciones de conjunto:
python
a = {1, 2, 3}
b = {3, 4, 5}print(a & b) # {3}print(a | b) # {1, 2, 3, 4, 5}
Diccionarios
Colección de pares clave-valor. Muy usada para representar objetos o estructuras tipo JSON.
python
persona = {
"nombre": "Roberto",
"edad": 35,
"profesion": "Ingeniero"
}print(persona["nombre"]) # Roberto
Operadores en Python
Operadores aritméticos
python
a + b # Suma
a - b # Resta
a * b # Multiplicación
a / b # División flotante
a // b # División entera
a % b # Módulo
a ** b # Potencia
Operadores de comparación
python
== # Igual
!= # Distinto
< # Menor que
> # Mayor que
<= # Menor o igual
>= # Mayor o igual
Operadores lógicos
python
and # y lógico
or # o lógico
not # negación
Ejemplo:
python
edad = 25
es_adulto = edad >= 18 and edad <= 65
Operadores de identidad y pertenencia
python
# Identidad
a is b
a is not b
# Pertenencia3 in [1, 2, 3]
# True"Py" in "Python" # True
Conversión de tipos (type casting)
Python permite convertir explícitamente entre tipos cuando es necesario:
python
int("10") # 10
float("3.14") # 3.14
str(100) # "100"
list("abc") # ['a', 'b', 'c']
Conviene realizar estas conversiones de forma controlada para evitar errores de tipo.
Tipado dinámico vs tipado estático
Python permite escribir código sin declarar tipos:
python
x = 10
x = "ahora soy una cadena"
Sin embargo, desde Python 3.5 en adelante se introdujo el tipado opcional con type hints:
python
def saludar(nombre: str) -> str:
return f"Hola, {nombre}"
Este tipado no es obligatorio, pero herramientas como mypy o editores como PyCharm y VSCode pueden ayudarte a detectar errores antes de ejecutar el código.
Ejercicios propuestos
🧠Ejercicio 1: Calcula tu edad en días
Pide al usuario que introduzca su edad en años y muestra cuántos días ha vivido aproximadamente.
👉 Ten en cuenta que un año tiene 365 días (ignora los años bisiestos para simplificar).
Mostrar solución
# Solicita la edad al usuario
edad = int(input("Introduce tu edad en años: "))
# Calcula los días aproximados vividos (sin contar años bisiestos)
dias_vividos = edad * 365
# Muestra el resultado
print(f"Has vivido aproximadamente {dias_vividos} días.")
🌡️ Ejercicio 2: Conversor de temperaturas
Solicita al usuario una temperatura en grados Celsius y convierte ese valor a grados Fahrenheit.
👉 Recuerda la fórmula: Fahrenheit = (Celsius × 9/5) + 32.
Mostrar solución
# Solicita la temperatura en Celsius
celsius = float(input("Introduce la temperatura en grados Celsius: "))
# Aplica la fórmula de conversión a Fahrenheit
fahrenheit = (celsius * 9/5) + 32
# Muestra el resultado
print(f"{celsius}°C equivalen a {fahrenheit}°F.")
📏 Ejercicio 3: Calcula el área de un rectángulo
Pide al usuario que introduzca la base y la altura de un rectángulo, y luego muestra el área.
👉 Recuerda que el área se calcula multiplicando base × altura.
Mostrar solución
# Solicita los valores de base y altura
base = float(input("Introduce la base del rectángulo: "))
altura = float(input("Introduce la altura del rectángulo: "))
# Calcula el área
area = base * altura
# Muestra el resultado
print(f"El área del rectángulo es: {area}")
🧾 Ejercicio 4: Añade el IVA a una compra
Solicita al usuario el precio de un producto e indica cuánto corresponde al IVA (21 %) y cuál es el precio final a pagar.
👉 Ideal para practicar porcentajes y sumas.
Mostrar solución
# Solicita el precio base del producto
precio = float(input("Introduce el precio del producto en euros: "))
# Calcula el IVA (21 %)
iva = precio * 0.21
# Suma el total a pagar
total = precio + iva
# Muestra los resultados
print(f"IVA: {iva:.2f} €")
print(f"Total a pagar: {total:.2f} €")
🔠 Ejercicio 5: Analiza una cadena de texto
Pide al usuario una palabra o frase. Luego muestra:
* Cuántos caracteres tiene
* Cuál es la primera letra
* Cuál es la última letra
👉 Puedes usar funciones como len() y el acceso por índice (texto[0], texto[-1]).
Mostrar solución
# Solicita una palabra o frase
texto = input("Introduce una palabra o frase: ")
# Muestra el número de caracteres
print(f"Número de caracteres: {len(texto)}")
# Muestra la primera letra
print(f"Primera letra: {texto[0]}")
# Muestra la última letra
print(f"Última letra: {texto[-1]}")
🗣️ ¿Te ha parecido interesante?
Si este contenido suscríbete a nuestra newsletter para no perderte futuras publicaciones sobre Python, automatización, desarrollo web y más.
💭 Además, déjanos un comentario con tus opiniones o cuéntanos qué temas te gustaría que tratemos próximamente. ¡Tu participación nos ayuda a crear mejor contenido para ti!