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)
  
Abrir en editor

Conversión o cast a Tupla en Python

tuple() permite convertir una secuencia iterable (como una lista o conjunto) a una tupla.

Ejemplo

    lst = [4, 5, 6]
tup = tuple(lst)  # tup será igual a (4, 5, 6)
print(tup)
  
Abrir en editor

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])
  
Abrir en editor

Conversión o cast a Booleano en Python

bool() permite convertir un valor a un tipo booleano (True o False).

Ejemplo

    val = 0
bool_val = bool(val)  # bool_val será igual a False
print(bool_val)
  
Abrir en editor

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.

Ejemplo

    x = int(3)
y = int(3.5)
z = int("3")
print(x, y, z)
print(type(z))
  
Abrir en editor

Ejercicio: Convertir lista a tupla

Convierte una lista en tupla inmutable con tuple().

Ejemplo

    lst = [4, 5, 6]
tup = tuple(lst)
print(tup)
print(type(tup))
  
Abrir en editor

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))
  
Abrir en editor

Ejercicio: Convertir a booleano con bool()

bool() convierte un valor a True o False según su valor de verdad.

Ejemplo

    print(bool(0))
print(bool(1))
print(bool(""))
print(bool("hola"))
  
Abrir en editor

Comprueba lo aprendido

Responde 2–3 preguntas sobre esta lección. Verás ✓ en verde si aciertas o ✗ en rojo si fallas.