full stack developer

Listas

curso-python 2020-08-08 06:37:20

Ya hemos visto anteriormente diferentes tipos de variables, como las cadenas (string), enteros (integer) y booleanos (True y False), veamos ahora otro tipo de datos que usarmos a menudo en python, las listas.

Pensemos antes en el mundo real, supongamos que al levantarte temprano de mañana escribes las cosas que haras durante el día, por ejemplo desayunar, ir a trabajar, almorzar, algo de deporte y, como no podía faltar, estudiar python :). Como ves se trata de una lista de diferentes cosas, y eso mismo es una lista en python.

Si has vistos otros lenguajes la idea te será familiar, es lo que en otros lenguajes se conoce como "arreglos" (arrays). En python las listas se definen entre corchetes, y sus elementos se separan con coma, por ejemplo:

mi_lista = ['desayunar', 'trabajar', 'estudiar']

En el ejemplo hemos definido una lista llamada mi_lista con 3 elementos de tipo string. Pero como mencionamos, las listas pueden tener diferentes tipos de elementos, por lo que lo siguiente también es una lista valida:

mi_lista = ['daniel',25,True,3.5,[1,2,3]]

Veras que mi_lista en ese caso contiene elementos como cadenas de texto, números enteros, booleano, numero decimales y, en el último elemento hasta posee otra lista (el "[1,2,3]").

Pasemos ahora a un ejemplo práctico, supongamos que tenemos una lista de clientes, podríamos almacenar sus nombre en una lista como sigue:

clientes = ['Juan', 'Maria', 'Andrea', 'Roberto', 'Patricia', 'Marcelo', 'Diego']

Si quisiésemos ver todo el contenido de la lista podríamos ejecutar:

print(clientes)

Esto nos devolverá el contenido total pero, como hacemos si sólo queremos acceder a un sólo elemento de la lista? para eso usamos el nombre de la lista y entre corchetes colocamos el índice a acceder, por ejemplo si queremos imprimir el primer elemento de la lista debemos ejecutar

print(clientes[0])

Como verás hemos puesto 0 y no 1, esto es porque los elementos comienzan a enumerarse desde el 0, por lo tanto el primer elemento seria el [0], el segundo el [1], y así sucesivamente.

Si por ejemplo deseas imprimir el último elemento de la lista (el cual es "Diego"), ya que nuestra lista tiene 7 elementos deberíamos escribir

print(clientes[6])

Si intentamos acceder a un índice inexistente, por ejemplo 7 o superior, nuestro programa nos dará error. Prueba esto ejecutando por ejemplo:

print(clientes [32])

y veras que el programa te avisa diciéndonte "list index out of range" (lo que significa que el índice especificado esta fuera de rango, es decir, no existe)

Supongamos ahora que definimos una lista muy sencilla con 2 elementos que son números enteros, y queremos imprimir el resultado de su suma en pantalla.

numeros = [10,20]
resultado = numeros[0] + numeros[1]
print(resultado)

Como bien es de esperar el resultado será 30, luego de que python sume el primer y segundo elemento de la lista, almacene el valor en la variable resultado, y finalmente muestre esta variable con print().

Otra forma de escribir el código anterior logrando el mismo resultado seria

numeros = [10,20]
print(numeros[0] + numeros[1])

En las lineas anteriores hemos prescindido de la variable para almacenar el resultado y hemos realizado la operación de suma directamente dentro del print().

Métodos de las listas

Las listas poseen diferentes métodos que te serán de mucha utilidad, vamos a ver alguno de ellos

append()

Mediante este método podrás agregar, como argumentos debemos pasar el elemento agregar, cualquiera sea su tipo (incluso puede tratarse de otra lista, la que se agregará como un elemento más como en el caso mostrado debajo de ["Python","NodeJS"])

lista = ["Diego"]
lista.append(25)
lista.append(["Python","NodeJS"])
lista.append(True)
print(lista)

extend()

Funciona como append, pero se diferencia en como se comporta al momento de agregar una lista, ya que en lugar de agregarlo como un elemento lo hace como varias elementos

Puedes ver el resultado del siguiente código y como difiere de append (a diferencia del ejemplo anterior ahora los elementos "Python" y "NodeJS" fueron agregados como elementos separados)

lista = ["Diego"]
lista.append(25)
lista.extend(["Python","NodeJS"])
print(lista)

remove()

Este método permite eliminar el elemento que le especifiquemos como parámetro, por ejemplo

lista = ["Diego",25,True]
print(lista)
lista.remove("Diego")
lista.remove(True)
print(lista)

index()

Nos devuelve el índice del elemento que le pasemos como parámetro, por ejemplo

lista = ["Diego",25,True]
print(lista.index(25))

count()

Nos permite conocer cuantas veces se encuentra el elemento especificado como parámetro

lista = ["Diego",25,True,25,25]
print(lista.count(25))

reverse()

Invierte los elementos de una lista, por ejemplo

lista = [1,2,3,4,5]
lista.reverse()
print(lista)




walterdiaz.dev | full stack developer