miércoles, 3 de marzo de 2021

Tipos de datos en Python




Tipos de datos en Python.


Los tipos de datos más importantes en Python se clasifican entre inmutables y mutables. 


Los strings, los números y las tuplas son inmutables, mientras que las listas y  los diccionarios son mutables. 

Por inmutable se entiende, entre comillas, que una vez declarado el dato este no se puede modificar, cambiar o actualizar, aunque como en cualquier variable si es posible asignarle un nuevo valor. Lo contrario para los mutables.

Para saber de que tipo de dato es un objeto podemos utilizar la función type().


# Strings. Son cadenas de caracteres. Van siempre entre comillas. Se pueden recorrer, contar etc. 

Ej. 

>>> cadena_texto = "Una frase"
>>> print(cadena_texto)
>>> print(len(cadena_texto))
>>> for i in cadena_texto:
        print(i)
Una frase
9
U
n
a
 
f
r
a
s
e

Para convertir un dato a tipo string utilizamos la función str()


# Números.  Pues son eso, números. Los puede haber de muchos tipos enteros, flotantes, decimales, binarios, hexadecimales etc. 

Los más habituales son los números:

- Enteros. pej. 12

- Flotantes. pej. 12.564

Para cambiar un dato, que se pueda cambiar a tipo numérico, utilizamos la función int() si queremos un número entero o float() si queremos un número flotante.


# Booleanos. Una variable booleana en Python es aquella que solo puede tener dos posibles valores:

True (verdadero) o False (Falso).  

Cuando una condición se cumple el valor booleano que se genera es True, mientras que sino se cumple será False. También se generará False cuando la variable este vacía o tenga un valor igual a cero y True en caso contrario.

>>> print(10 > 9)
True
>>> print(10 == 9)
False
>>> print(10 < 9)
False
print(bool("Hola"))
True
print(bool(0))
False


Para convertir a tipos booleanos usaremos la función bool()


# Tuplas Son una serie de datos ordenados que van entre paréntesis () y que no pueden cambiar.  Python también entiende como tuplas varios números seguidos por una "," aunque si solo tienes un número y quieres que sea una tupla tienes que ponerle una coma detrás ya que sino Python entenderá que es un número.

>>> x=1,2,3,4,5

>>> y=(5,6,7,8)
>>> z=1,
>>> n=1
>>> print(type(x), type(y), type(z), type(n))
<class 'tuple'> <class 'tuple'> <class 'tuple'> <class 'int'>

Para cambiar de otro tipo de datos a tuplas utilizamos la función tuple()


# Listas. Es una colección ordenada de objetos. Se escriben entre corchetes []. Se pueden cambiar sus datos, recorrerlos...Son muy versátiles. Al ser ordenada podemos ir a cualquiera de sus elementos indicando su posición. 

Sus elementos se recorren de izquierda a derecha y comienzan por la posición 0, luego la 1, la 2 y así sucesivamente. Se pueden recorrer tambien de derecha a izquierda [-1],[-2] y también seleccionar parte de sus elementos con [(posición inicial incluida):(posición final sin incluir ese elemento):(salto)]

Pej. lista[:] -> Sino ponemos nada se supone que empezamos por el primero y terminamos en el ultimo

>>> lista = [1,2,3,4,5]
>>> print(type(lista))
>>> print(lista[0])
1
>>> print(lista[-2])
4
>>> print(lista[0:4])
[1,2,3,4]
>>> print(lista[0:4:2])
[1,3]
>>> # Para invertir una lista puedes usar lista[::-1]
>>> # Que recorra desde el primer al ultimo elemento y que lo haga de uno 
>>> # en uno desde el final.
>>> print(lista[::-1])
>>> [5, 4, 3, 2, 1]

La función que nos crea una lista a partir de otros objetos es list().

>>> print(list(range(1,10)))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print(list("Bienvenido"))
['B', 'i', 'e', 'n', 'v', 'e', 'n', 'i', 'd', 'o']


# Diccionarios. {key:Value} Son una agrupación de datos con una estructura de {clave:valor ,..., clave:valor} Nos permiten almacenar cualquier tipo de valor como enteros, cadenas, listas, e incluso funciones. 

Para definir un diccionario, se encierra el listado de valores entre llaves. Las parejas de clave y valor se separan con comas, y la clave y el valor se separan con dos puntos.

Podemos acceder al elemento de un Diccionario mediante la clave de este elemento.

>>> diccionario = {'nombre':'Perico','apellido':'palotes', 'edad':25 }
>>> print(type(diccionario))
<class 'dict'>
>>> print(diccionario['nombre'])
Perico

La función para crear diccionarios es dict().


# Conjuntos. Es una colección no ordenada de objetos únicos que no se pueden repetir. Se ponen entre {}.

 No ordenada quiere decir que aunque tu los teclees en un orden en concreto Python los aloja en memoria como le parece y te los devuelve cuando los necesitas como le viene bien. 

Y el que sus elementos no se puedan repetir es muy útil en la práctica, cuando tiene un conjunto de datos con muchos elementos pero solo te interesan saber los que no se repiten.

>>> x={'primero','segundo', 'tercero','segundo'}
>>> print(type(x))
<class 'set'>
>>> print(x)
{'tercero', 'segundo', 'primero'}

Para convertir otro tipo de datos en conjuntos utilizamos la función set()


Cada uno de estos tipos de datos tienen muchas funciones y métodos asociadas a ellos con las que se pueden trabajar. Los veremos más adelante. En este post solo he puesto los tipos de datos que existen en Python.


No hay comentarios:

Publicar un comentario