Cast en Python
Cast o casting en python , es la operación de convertir un tipo de dato a otro tipo de dato distinto. Python es un lenguaje de tipado dinámico, lo que significa que no es necesario declarar el tipo de una variable antes de usarla, y Python realiza automáticamente algunas conversiones implícitas cuando es necesario. Sin embargo, en algunas ocasiones, es necesario realizar conversiones explícitas para adecuar los datos a ciertas operaciones específicas o para garantizar que el resultado sea el esperado.
Tipos de conversiones o casting en Python:
-
Cast a entero (int):
int(valor) -
Cast a punto flotante (float):
float(valor) -
Cast a cadena (str):
str(valor) -
Cast a lista (list):
list(secuencia) -
Cast a tupla (tuple):
tuple(secuencia) -
Cast a conjunto (set):
set(secuencia) -
Cast a diccionario (dict):
dict(lista_de_pares_clave_valor) -
Cast a booleano (bool):
bool(valor)
Conversión o cast a Int en Python
La función
int()
permite convertir un valor a un número entero.
Ejemplo
x = int(3) # output de x: 3
y = int(3.5) # output de y: 3
z = int("3") # output de z: 3
print(z)
Conversión o cast a Float en Python
La función
float()
permite convertir un valor a un número float(decimal).
Ejemplo
x = float(3) # obtendrás 3.0
y = float(3.1) # obtendrás 3.1
z = float("3") # obtendrás 3.0
w = float("3.5") # obtendrás 3.5
print(w)
A continuación veremos como convertir el tipo de datos de string a float.
Ejemplo
x = "47.5"
print(float(x))
# Output: 47.5
Importante
: En el tipo de datos float, el separador es un "
." si se utiliza una coma, dará error
El separador de Float es un punto, cuidado con las comas
A continuación podrás ver un ejemplo de cómo usando una coma en lugar de "
." daría un error, ya que python no lo reconoce como el separador del decimal.
Ejemplo de error
x = "15,5"
print(float(x))
# Output: ValueError: could not convert string to float: '15,5'
No se puede convertir un valor string o cadena a float
Intentar convertir cadenas o tipos de datos string compuestas por palabras a float, también daría error, aunque es obvio que no tiene sentido realizar esta conversión.
Ejemplo de error
x = "Tutorial"
print(float(x))
# Output: ValueError: could not convert string to float: 'Tutorial'
Conversiones o cast a string (cadenas) en Python
La función
str()
construye una cadena a partir de distintos tipos de datos, como strings(cadenas), int(enteros) y decimales(float).
Ejemplo
x = str("d4") #obtendrás 'd4'
y = str(3) # obtendrás '3'
z =z = str(5.0) # obtendrás '5.0'
print(z)
Conversión o cast a list en Python
list()
permite convertir una secuencia iterable (como una tupla o conjunto) a una lista.
Ejemplo
tup = (1, 2, 3)
lst = list(tup) # lst será igual a [1, 2, 3]/span>
print(lst)
Conversión o cast a Tupla en Python
tuple()
permite convertir una secuencia iterable (como una lista o conjunto) a una tupla.
Conversión o cast a diccionario en Python
dict()
permite convertir una lista de pares clave-valor (como una lista de tuplas) a un diccionario.
Ejemplo
import numpy as np
matriz = np.array([
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
])
filtro = matriz > 5
print(matriz[filtro])
Conversión o cast a Booleano en Python
bool()
permite convertir un valor a un tipo booleano (True o False).
Practica Cast en Python en el editor
Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.
Ejercicio: Convertir a entero con int()
Usa int() para convertir literales y cadenas numéricas a enteros.
Ejercicio: Convertir lista a tupla
Convierte una lista en tupla inmutable con tuple().
Ejercicio: Crear un diccionario con dict()
Construye un diccionario a partir de pares (clave, valor) con dict().
Ejemplo
pares = [("nombre", "Elena"), ("ciudad", "Valencia"), ("coche", "Seat Ibiza")]
d = dict(pares)
print(d)
print(type(d))
Ejercicio: Convertir a booleano con bool()
bool() convierte un valor a True o False según su valor de verdad.
Comprueba lo aprendido
Responde 2–3 preguntas sobre esta lección. Verás ✓ en verde si aciertas o ✗ en rojo si fallas.