Cast en Python

El cast o casting permite convertir un tipo de datos a otro tipo de datos distinto.

Existen dos tipos de conversiones, implícitas y explícitas:

  • Implícitas: Python realiza las conversiones.
  • Explícitas: Nosotros realizamos la conversión.

Las conversiones en Python se realizan mediante las siguientes funciones:

  • int()
  • float()
  • str()

Conversiones a Int o enteros en Python

La función int() construye un número entero a partir de un int(entero), un float(decimal) o un string(cadena).

Ejemplo de conversión a Int

x = int(3) # output de x: 3
y = int(3.5) # output de y: 3
z = int("3") # output de z: 3

A continuación veremos como convertir el tipo de datos de tipo float a int.

Ejemplo de conversión de Float a Int

x = 8.5
x = int(x)
print(x)
# Output:8

Conversiones a float o decimales en Python

La función float() construye un número decimal a partir de un int (entero), un float(decimal) o un string(cadena).

Ejemplo de conversión a float

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

A continuación veremos como convertir el tipo de datos de string a float.

Ejemplo de conversión de string a float

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

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 al no utilizar el " . " como separador

x = "15,5"
print(float(x))
# Output: ValueError: could not convert string to float: '15,5'

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 al intentar convertir cadenas de palabras a float

x = "Tutorial"
print(float(x))
# Output: ValueError: could not convert string to float: 'Tutorial'

Conversiones a string o 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 de conversión a string

x = str("d4") #obtendrás 'd4'
y = str(3) # obtendrás '3'
z = str(5.0) # obtendrás '5.0'

A continuación veremos como convertir datos de tipo float a string.

Ejemplo de conversión de float a string

x = 8.5
print(type(x)) # Ahora tipo 'float'
x = str(x)
print(type(x)) # después tipo 'str'