Conversión de tipos y conversión de tipos en Python explicados con ejemplos
Publicado: 2020-02-19Python tiene muchos tipos de datos y, como programador, debe saber cómo convertir un tipo de datos de Python en otro. Python tiene muchas funciones integradas para esta tarea. Y en esta guía simple, los revisaremos para ayudarlo a comprender mejor las conversiones de tipo.
Una vez que haya terminado con esta guía, sabrá cómo convertir cadenas en números enteros y viceversa. Así que sin más preámbulos, comencemos.
Tabla de contenido
Tipos de datos en Python
Antes de comenzar nuestra discusión sobre la conversión de tipos en Python, echemos un breve vistazo a todos los tipos de datos presentes en este lenguaje:
enteros
Los valores enteros pueden ser tan largos como desee. Al igual que en matemáticas, los números enteros en Python también son dígitos. Pero no puedes tener números enteros indefinidamente largos a menos que tengas una supercomputadora. Python trata cualquier número sin prefijo como un número entero. Estos números también incluyen dígitos decimales.
Números de punto flotante
Los flotantes en Python son números que se escriben con un punto decimal para separar los dígitos fraccionarios y el entero. Algunos ejemplos de números de punto flotante son 4.3, 9.18, etc. También puede agregar 'e' para la notación científica en Python.
Números complejos
Los números complejos en Python siguen este formato: (la parte real + la parte imaginaria). Algunos ejemplos de números complejos son (3+2i), (8-2x), etc.
Instrumentos de cuerda
Las cadenas pueden ser cualquier conjunto particular de caracteres en Python. Se les conoce como str. Puedes escribirlos usando comillas. Puede usar comillas simples y comillas dobles para escribir cadenas en Python. Las cadenas pueden ser cualquier carácter colocado entre comillas, como '91', "hola", etc.
Al igual que los números enteros, no hay límite para la longitud de los caracteres en las cadenas. Las cadenas son de varios tipos, como cadenas entre comillas triples, cadenas sin procesar y muchas otras. Sin embargo, si empezáramos a discutir las cadenas y sus tipos, este artículo sería demasiado extenso.
Tipo de datos booleanos
El último tipo de datos que nos queda por discutir es el tipo de datos booleano. Los datos booleanos pueden tener uno de dos valores, que son verdadero y falso. Los valores booleanos son bastante esenciales en Python por muchas razones. Puede utilizar valores booleanos para determinar la veracidad de objetos y valores.
Leer: Salario de desarrollador de Python en India 2020
A medida que aprenda más sobre los operadores lógicos en Python, tendrá que lidiar con objetos y valores booleanos.
Así que estos eran todos los tipos de datos presentes en Python. Obtenga más información sobre los tipos de datos en Python. Además de estos tipos de datos, Python también tiene muchas funciones integradas que lo ayudan a realizar una variedad de tareas. También necesitaremos usar algunas funciones integradas para implementar la conversión de tipo. Consulte nuestros programas de ciencia de datos para conocer varios tipos de conversiones.
Ahora que hemos discutido los tipos de datos, podemos pasar a la conversión de tipos.
Diferentes tipos de conversiones de tipos en Python
Hay dos tipos de conversiones de tipo en Python. Ellos son los siguientes:
Implícito
En este caso, Python convierte un tipo de datos en otro tipo automáticamente. Usted, el usuario, no tiene que involucrarse en este proceso. Aquí hay un ejemplo de conversión implícita de entero a flotante en Python:
num_int = 18
num_flo = 1.8
num_nuevo = num_int + num_flo
imprimir ("tipo de datos de num_int:", tipo (num_int))
imprimir ("tipo de datos de num_flo:", tipo (num_flo))
print(“Valor de num_nuevo:”,num_nuevo)
imprimir ("tipo de datos de num_new:", tipo (num_new))
La salida del código anterior sería la siguiente:
tipo de datos de num_int: <clase 'int'>
tipo de datos de num_flo: <clase 'float'>
Valor de num_nuevo: 19.8
tipo de datos de num_new: <clase 'flotante'>
Como puede ver, solo tuvimos que agregar num_flo y num_int junto con num_new para obtener el resultado deseado. Convertimos el entero 18 en un flotante 19.8 a través de unas pocas líneas de código. Lo más importante a tener en cuenta aquí es que Python convirtió el número entero en flotante automáticamente.
Explícito
En el caso de conversión de tipo explícita, usamos funciones para propósitos de conversión. ¿Recuerdas las funciones integradas que mencionamos antes? Serán útiles en esta sección. Otro nombre para las conversiones de tipo explícitas es encasillamiento. Tiene este nombre porque usted, el usuario, convierte el tipo de datos del objeto en cuestión.

Hay algunas funciones de conversión de tipos con las que debe estar familiarizado para realizar el encasillado en Python. Int(a,base) es una función popular ya que puede convertir cualquier tipo de datos en un número entero. float() puede convertir cualquier tipo de datos en un número de coma flotante. oct() convierte números enteros en cadenas octales y hex() convierte números enteros en cadenas hexadecimales.
Aquí hay un ejemplo de conversión de tipos usando oct():
c = oct(80)
imprimir ("Salida: ", final ="")
imprimir (c)
Y la salida sería:
Salida: 0o120
Cuando trabaje con estas funciones, recuerde que la sintaxis para dicha conversión debe ser:
(tipo_de_datos_deseado)(expresión)
Hay muchos tipos de conversiones de tipo que puede realizar en Python. Sin embargo, hay dos tipos de ellos, en los que realizará más. Convertir cadenas en números enteros y viceversa puede ser un excelente punto de partida. Entonces, analicemos cada una de esas conversiones de tipo por separado para comprender mejor este tema:
Leer: Temas e ideas de proyectos para desarrolladores de Python
Convertir cadena a int Python
Puede convertir una cadena a int Python a través de la función int(). Te da un entero decimal con solo un clic. Asume que la expresión que ingresó es un entero decimal, pero si no lo es, devolverá un ValueError. Y no queremos eso. Puede mencionar el sistema numérico que necesita dando al valor una base para evitar este problema.
Entonces, si está convirtiendo una cadena a int en Python, puede hacer esto:
int(“5”)
O bien, puede agregar una base para diferentes tipos de cadenas:
int(“5”, base=10)
Ahora analicemos el reverso de esta conversión, es decir, cuando necesita convertir un número entero en una cadena.
Convirtiendo int a String Python
Puede usar la función str() para convertir números enteros en cadenas. Solo sigue la sintaxis que mencionamos antes:
cadena(5)
Las cadenas pueden convertir números enteros en expresiones decimales si usa un literal binario. Sin embargo, al igual que con la función int, si lo requiere, puede agregar más información para diferentes conversiones. Puede obtener resultados octales, binarios e incluso hexadecimales con esta función.
Después de un poco de práctica, también puede realizar tareas más complejas con la conversión de tipos. Aquí hay un ejemplo de cómo agregar una cadena con un número entero mediante el encasillado:
núm_int = 256
num_cadena = “64”
print(“Tipo de datos de num_int:”,tipo(num_int))
print(“Tipo de datos de num_str antes de Type Casting:”,type(num_str))
num_str = int(num_str)
print(“Tipo de datos de num_str después de Type Casting:”,type(num_str))
num_sum = num_int + num_str
print(“Suma de num_int y num_str:”,num_sum)
print(“Tipo de datos de la suma:”,type(num_sum))
La salida del código anterior sería esta:
Tipo de datos de num_int: <clase 'int'>
Tipo de datos de num_str antes de Type Casting: <class 'str'>
Tipo de datos de num_str después de Type Casting: <clase 'int'>
Suma de num_int y num_str: 320
Tipo de datos de la suma: <clase 'int'>
Como puedes ver, es muy divertido. Siéntase libre de experimentar con conversiones de tipo y ampliar su base de conocimientos.
Conclusión
Esperamos que hayas aprendido mucho de este artículo. Realizar conversiones de tipo es una de las muchas cosas que puede hacer con las funciones de Python.
Si está leyendo este artículo, lo más probable es que tenga la ambición de convertirse en un desarrollador de Python. Si está interesado en aprender Python y quiere ensuciarse las manos con varias herramientas y bibliotecas, consulte el Diploma PG en ciencia de datos de IIIT-B.
En la codificación, ¿en qué se diferencian las conversiones explícitas de las implícitas?
Una conversión de tipo implícita es una conversión de tipo definida por el usuario y obliga a que una expresión sea de un tipo determinado. Cuando se combinan varios tipos de datos en una expresión, el compilador realiza una conversión de tipo implícita. La conversión explícita, también conocida como conversión, es cuando convertimos explícitamente de un tipo de datos a otro mediante la ejecución de la función adecuada para el tipo de datos al que deseamos convertir. Sin la asistencia del programador, se logra una conversión de tipo implícita.
¿En qué se diferencia la conversión de tipos de la conversión de tipos?
El tipo de datos de destino debe ser más pequeño que el tipo de datos de origen al convertir un tipo de datos a otro. Sin embargo, los datos de origen deben ser más pequeños que el tipo de datos de destino al convertir un tipo de datos a otro. Un programador debe escribir manualmente un tipo de datos en otro tipo. La conversión de un tipo de datos a otro no implica la intervención del programador porque el compilador lo compila automáticamente durante la ejecución del programa. Existe la posibilidad de que se pierdan datos o información durante la conversión de tipos. Al convertir un tipo de datos pequeño a un tipo de datos grande, es poco probable que se pierdan datos.
¿Cuál es más eficiente en Python- tuplas o listas?
Una tupla es una colección de objetos de Python separados por comas y, debido a su naturaleza estática, la tupla es más rápida que la lista. Las tuplas también son más eficientes en términos de memoria que las listas. Cuando se trata de eficiencia de tiempo, las tuplas tienen una pequeña ventaja sobre las listas, particularmente cuando se trata de buscar un valor. Si tiene datos que no deben modificarse en primer lugar, se debe preferir un tipo de datos de tupla a una lista. Podemos hacer una lista de tuplas, lo que significa que los miembros de la tupla pueden envolverse en una lista y, por lo tanto, seguir las mismas características que una lista de Python. Como las tuplas de Python ocupan menos espacio, es más práctico construir una lista de tuplas.