Las listas son una forma común de almacenar múltiples datos en Python. Al crear una lista, podemos almacenar claramente muchos tipos diferentes de datos en ella. Funcionan como una lista de compras. Le damos un nombre a la lista y luego ingresamos elementos debajo de la lista.
Las listas son otra estructura de almacenamiento de datos, al igual que diccionarios, tuplas y conjuntos. Las listas son objetos mutables, podemos cambiar el contenido actualizándolo, eliminando y agregando a una lista. Los objetos almacenados en una lista se incluyen bajo el término amplio de «elementos» y cada elemento tiene una posición en la lista, un número de índice. El primer objeto de la lista tiene el número de índice cero y, a medida que obtenemos más elementos, cuenta hacia arriba.
Aprenderemos cómo crear listas y luego actualizar y eliminar los elementos que contienen. Luego aplicaremos nuestros conocimientos para crear una aplicación de listas de compras que envíe listas directamente a nuestro teléfono celular.
Para demostrar cómo usar listas en Python, usaremos Thonny, un editor de Python gratuito, fácil de usar y multiplataforma.
Antes de que empieces, instalar Thonny si aún no lo tienes. Vaya al sitio de Thonny para descargar el lanzamiento para su sistema. Alternativamente, instale la versión oficial de Python. usando esta guía. Tenga en cuenta que esta guía cubre la instalación en Windows 10 y 11.
Cómo crear una lista en Python
La forma más básica de una lista implica crear el objeto de lista y luego colocar elementos dentro de él.
1. En un nuevo documento en blanco, cree una lista llamada «compras» y almacene allí tres artículos de compras. Los elementos de una lista pueden ser números enteros, flotantes, cadenas e incluso otra lista. También se pueden crear listas sin artículos, compras = [] creará una lista en blanco pero necesitaremos agregarle datos. Cubriremos las listas de actualización más adelante.
shopping = ["Apples","Bananas","Milk"]
2. Imprima todo el contenido de la lista. Esto muestra el contenido de la lista, incluido el [ ] soportes.
print(shopping)
3. Guarde el código como shopping.py y haga clic en Ejecutar >> Ejecutar script actual. La salida se parece a [‘Apples’, ‘Bananas’, ‘Milk’] lo que demuestra que la lista funciona, pero podemos usarla para generar contenido en oraciones.
4. Agrega otra función de impresión para identificar que estamos imprimiendo una lista de compras.
print("The shopping list contains")
5. Usando un en bucle con un rango, imprimimos cada elemento de la lista, usando el método de formato de cadena de Python para colocar el elemento en la oración como una cadena. ¿Cómo sabemos la cantidad de elementos en una lista para crear un rango? Bueno, ahora mismo no importa ya que la función len() calculará la longitud del objeto de la lista de compras y usará ese valor como rango. Luego, el bucle for iterará a través de los elementos, actualizando el valor de i cada vez que el bucle se repita.
for i in range(len(shopping)):
print("I need to buy :s".format(shopping[i]))
6. Guarde el código y haga clic en Ejecutar >> Ejecutar script actual. Veremos impresa la lista completa, luego el texto de nuestra lista de compras se imprime en Python Shell.
Listado de códigos completo: creación de una lista
shopping = ["Apples","Bananas","Milk"]
print(shopping)
print("The shopping list contains")
for i in range(len(shopping)):
print("I need to buy :s".format(shopping[i]))
Actualizar y eliminar elementos de una lista
Las listas son objetos mutables. Esto significa que podemos crear, actualizar y eliminar entradas de una lista. En nuestra lista de compras actual tenemos plátanos, pero miramos en el frutero y descubrimos que tenemos muchos plátanos, ¡pero no tenemos uvas! Así que cambiemos los plátanos por uvas.
1. En una nueva línea fuera del bucle for anterior, imprimir un mensaje para decir que estamos actualizando el contenido de la lista de compras.
print("Shopping list has changed")
2. Cambie plátanos a uvas actualizando el valor de ese elemento en la lista. Sabemos que «Bananas» es el segundo elemento de la lista, como Python cuenta desde cero, sabemos que la posición del elemento en la lista es 1.
shopping[1] = "Grapes"
3. Usando un en bucle con un rango imprimimos cada elemento de la lista. Esto imprimirá la lista anterior y luego la lista actualizada.
4. Guarde y ejecute el código. La lista actualizada y la lista anterior se imprimen en Python Shell.
Abrimos la puerta del frigorífico y nos damos cuenta de que necesitamos añadir mantequilla, huevos y queso a nuestra lista de la compra. Podemos agregar un solo elemento al final de la lista o podemos extender la lista y pasarle varios elementos.
1. En una nueva línea fuera del bucle for anterior e imprima un mensaje para decir que estamos actualizando el contenido de la lista de compras nuevamente.
print("Shopping list has changed again")
2. Agregue queso a la lista de compras. Agregar agregará el elemento al final de la lista.
shopping.append("Cheese")
3. Utilice extender para agregar varios artículos a la lista de compras. Extender requiere que envolvamos los elementos que deseamos agregar entre paréntesis. Estos nuevos elementos pueden ser cualquier objeto iterable; en este caso he usado una tupla para contener los elementos.
shopping.extend(("Butter","Eggs"))
4. Usando un en bucle con un rango imprimimos cada elemento de la lista. Esto imprimirá las listas antiguas y luego la lista actualizada.
5. Guarde y ejecute el código. La lista actualizada y las listas anteriores se imprimen en Python Shell.
¡Llegamos a la tienda y nos damos cuenta de que no necesitamos huevos! Así que eliminémoslos de nuestra lista.
1. En una nueva línea fuera del bucle for anterior, imprima un mensaje para informar que estamos retirando los huevos.
print("Removing the eggs")
2. Retire los huevos de la lista de compras. Tenga en cuenta que el valor del artículo distingue entre mayúsculas y minúsculas. “Huevos” no es lo mismo que “huevos”.
shopping.remove("Eggs")
3. Utilice una declaración condicional para comprobar que los huevos ya no están en la lista de compras. Si hay huevos nos dirá que se nos olvidó sacarlos. Si no hay huevos, entonces se activará la condición else e imprimirá que han sido eliminados de la lista.
if "Eggs" in shopping:
print("I forgot to remove the eggs")
else:
print("The eggs have been removed from the list")
4. Guarde y ejecute el código. Si los óvulos han sido eliminados verás una confirmación, si no, verás un recordatorio.
Listado de códigos completo: actualización y eliminación de elementos en una lista
print("Shopping list has changed")
shopping[1] = "Grapes"
for i in range(len(shopping)):
print("I need to buy :s".format(shopping[i]))
print("Shopping list has changed again")
shopping.append("Cheese")
shopping.extend(("Butter","Eggs"))
for i in range(len(shopping)):
print("I need to buy :s".format(shopping[i]))
print("Removing the eggs")
shopping.remove("Eggs")
if "Eggs" in shopping:
print("I forgot to remove the eggs")
else:
print("The eggs have been removed from the list")
Usando un bucle For con una lista
Anteriormente usamos un bucle for con un rango para imprimir los artículos en nuestra lista de compras usando su posición (número de índice). Sin embargo, hay otra manera: podemos crear una variable y, usando un bucle for, podemos iterar sobre los artículos de la lista de compras e imprimirlos. Todo esto se logra sin necesidad de un número de índice.
1. En una nueva línea, imprima un mensaje para indicar que estamos usando un bucle for.
print("Using a for loop to print our shopping list")
2. Utilice un bucle for para iterar sobre cada artículo de la lista de compras. El valor de «elemento» cambiará cada vez que se repita el bucle for. Cuando se hayan iterado todos los elementos, el bucle for finalizará.
for item in shopping:
3. Imprima el mensaje en Python Shell usando formato de cadena. Solo necesitamos pasar la variable item, no shopping(item), ya que estamos trabajando dentro de la lista.
print("I need to buy :s".format(item))
4. Guarde y ejecute el código. El bucle for imprimirá el contenido de la lista de compras.
Listado de código completo: uso de un bucle For con una lista
print("Using a for loop to print our shopping list")
for item in shopping:
print("I need to buy :s".format(item))
Usar listas en un proyecto del mundo real
Una lista de compras en nuestra computadora de escritorio no sirve de mucho, pero una lista de compras en nuestro teléfono celular y en los teléfonos celulares de otros miembros de la familia sí lo es. vamos a usar ntfy.sh, un servicio para enviar notificaciones a dispositivos Android e iOS. Lo usamos en nuestro Diccionarios cómo como servicio para enviar mensajes e imágenes a dispositivos.
1. Instalar ntfy.sh para su dispositivo Android/iOS.
2. Abra la aplicación y haga clic en + para crear una nueva suscripción.
3. Crea un nuevo tema y haz clic en Suscribirse. Elegimos utilizar la lista de compras. Crea un tema que sea personal para ti. También tenga en cuenta que es posible que los temas no estén protegidos con contraseña, así que no envíe datos confidenciales.
4. Deja la aplicación abierta en tu dispositivo.
Ahora nuestra atención se centra en nuestra PC con Thonny.
5. Crea un archivo en blanco.
6. Importe el módulo de solicitudes. Este es un módulo de código Python preescrito diseñado para enviar y recibir conexiones de red.
import requests
7. Crea una lista en blanco llamada compras.
shopping = []
8. Cree una variable, num_items y, utilizando una función de entrada, capture la respuesta a la pregunta y guárdela como un número entero. La función de entrada puede tomar un argumento de mensaje, con él podemos crear mensajes personalizados.
num_items = int(input("How many items do you want to add to your shopping list? "))
9. Usando un bucle for, recorra en iteración la cantidad requerida de artículos, pidiendo al usuario que ingrese el nombre del artículo y lo agregue a la lista de compras. Otra función de entrada se utiliza para capturar los artículos que compran los usuarios; el mensaje debe ser una cadena, ya que utilizamos el formato de cadena f para convertir. Lo que convertimos es el valor de i, el artículo. El valor de i está vinculado al número de índice, la posición del elemento en la lista. En la lista comienza desde cero, pero para el mensaje de entrada agregamos uno al valor para algo que sea más comprensible para la mayoría de los humanos. Esto es puramente cosmético y no afecta los números de índice de la lista.
for i in range(num_items):
item = input(f"Enter item i+1: ")
shopping.append(item)
10. Imprima un mensaje y luego use un bucle for para imprimir el contenido de la lista de compras. Esto es más para depurar, pero es útil para comprobar que nuestra lista es correcta.
print("The shopping list is:")
for item in shopping:
print(item)
11. Cree una nueva variable, shopping_list y allí almacene todo el contenido de la lista de compras, usando comas para separar los valores. Este es un paso de formato para garantizar que la lista se envíe correctamente a través de ntfy.sh.
shopping_list = (", ".join(shopping))
12. Envíe la lista de compras al tema ntfy.sh correcto. El objeto shopping_list son los datos que deseamos enviar, el encabezado es un título para identificar claramente cuáles son los datos.
requests.post("https://ntfy.sh/th-shopping-list",
data=shopping_list,
headers= "Title": "Shopping List" )
13. Guarde el código como shopping-list.py y haga clic en Ejecutar. Ingrese el número de elementos de la lista de compras, presione Entrar, escriba cada elemento y presione Entrar. Una vez que se haya realizado la entrada final, al presionar la tecla Enter por última vez se enviará la lista a su teléfono celular/dispositivo móvil. Verifique su dispositivo para ver la notificación.
Listado de códigos completo: Proyecto del mundo real
import requests
shopping = []
num_items = int(input("How many items do you want to add to your shopping list? "))
for i in range(num_items):
item = input(f"Enter item i+1: ")
shopping.append(item)
print("The shopping list is:")
for item in shopping:
print(item)
shopping_list = (", ".join(shopping))
requests.post("https://ntfy.sh/th-shopping-list",
data=shopping_list,
headers= "Title": "Shopping List" )