Portada » Blog » 🐍Tipos de Datos y Operadores en Python: Guía Clara para Principiantes [2025]

🐍 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!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *