Tipos de datos y conversiones - Python avanzado - Capítulo 3


Cómo ver el tipo de dato de una variable en Python

Empecemos viendo algo que quizás ya sabes, pero puede que otros no, ya que no lo dí en el curso básico de Python. Cómo ver los tipos de datos de las variables.

Código

a = 10
print(type(a))

a = 10.55
print(type(a))

a = 'Programación Fácil'
print(type(a))

a = True
print(type(a))

a = None
print(type(a))

Resultado

Este código símplemente muestra una variable "a" que va cambiando de tipo de dato. Gracias al uso de type(), va mostrando en cada print() el tipo de dato que es la variable.

class 'int'
class 'float'
class 'str'
class 'bool'
class 'NoneType'

Cómo saber si una variable booleana es True o False en Python

Podemos crear un sencillo if else que nos diga si una variable booleana es True o False.

Código

a = False
if a is True:
    print("Verdadero")
else:
    print("Falso")

a = True
if a is True:
    print("Verdadero")
else:
    print("Falso")

Resultado

Falso
Verdadero

Cómo convertir tipos datos en Python

Convertir un string en un integer

Pasemos a convertir tipos de datos. Primero cómo convertir un string que contenga un valor numérico a un integer.

Código

a = "10"
a = int(a)
print(type(a))

Resultado

class 'int'

Podemos perfectamente almacenar el valor a convertir en otra variable directamente.

Código

a = "10"
b = int(a)
print(type(a))
print(type(b))

Resultado

class 'str'
class 'int'

Convertir un integer en un string

Código

a = 10
b = str(a)
print(type(a))
print(type(b))

Resultado

class 'int'
class 'str'

Convertir un float en un integer

Para transformar de float a integer se hace de la misma forma, con int(), solo que si lo hacemos, evidentemente, vamos a perder el valor decimal por el camino.

Código

a = 10.565
b = int(a)
print(type(a))
print(type(b),b)

Resultado

class 'float'
class 'int' 10

Convertir un string en un float

Siempre que un string contenga un valor decimal con un punto y no una coma, podrá ser transformado a float.

Código

a = "10.565"
b = float(a)
print(type(a))
print(type(b),b)

Resultado

Esta vez se imprime el tipo de dato de la variable b y su valor, para que veas que al convertir de string a float, no se pierden datos como era de esperar.

class 'str'
class 'float' 10.565

Cómo convertir listas, tuplas y sets

Pasamos a algo un poquito más interesante, la conversión entre listas, tuplas y sets.

Cómo crear una lista a partir de un string

Podemos almacenar cada caracter de un string formando una lista con un simple paso, con list().

Código

a = "Programación Fácil"
b = list(a)
print(type(b),b)

Resultado

Cada caracter ocupa una posición de la lista, hasta los espacios.

class 'list' ['P', 'r', 'o', 'g', 'r', 'a', 'm', 'a', 'c', 'i', 'ó', 'n', ' ', 'F', 'á', 'c', 'i', 'l']

Cómo convertir un string en una tupla.

Lo mismo podemos hacer como con la lista, solo hay que utilizar tuple() y nos crea una tupla.

Código

a = "Programación Fácil"
b = tuple(a)
print(type(b),b)

Resultado

class 'tuple' ('P', 'r', 'o', 'g', 'r', 'a', 'm', 'a', 'c', 'i', 'ó', 'n', ' ', 'F', 'á', 'c', 'i', 'l')

Cómo crear sets a partir de un string

Y lo mismo ocurre con los sets, solo que estos no son ordenados y no se repiten caracteres, en el caso de la "o" y la "a", realmente no se repiten como puedes pensar. Esto ocurre porqué para Python no es lo mismo "ó" y "á" que "o" y "a", ya que los trata como caracteres distintos.

Código

a = "Programación Fácil"
b = set(a)
print(type(b),b)

Resultado

El orden en que se muestra en la consola el set, es aleatorio, si lo ejecutas varias veces verás que van cambiando los caracteres de posición.

class 'set' {'ó', 'c', ' ', 'l', 'o', 'P', 'n', 'r', 'á', 'm', 'i', 'F', 'g', 'a'}

Aquí concluye este tercer capítulo, que para muchos/as quizás haya sido un tanto básico y para otros/as no tanto. La cuestión es ir aprendiendo peculiaridades del lenguaje Python para conseguir dominarlo a fondo, poco a poco iré subiendo el nivel.


Suscríbete a mi canal de YouTube para apoyarme

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.


Comentarios

Si te quedan dudas sobre el temario, sobre Python, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.