Tarefa 1: Crear unha función para engadir elementos
Duración:
15 min
Agrupamento:
Individual
Primeiro, empezaremos cunha función básica para engadir elementos á lista ou conxunto.
Enunciado: Crea unha función chamada engadir que engada un elemento a unha lista utilizando o método append. Despois, proba esta función chamándoa coas seguintes accións:
Engadir "mazá". Engadir "laranxa".
Código Python: Función engadir
def engadir(lista, elemento):
lista.append(elemento) # Engadir o elemento á lista
print(elemento, "engadido á lista.") # Confirmación
# Proba a función
lista_compra = [] # Iniciar a lista baleira
engadir(lista_compra, "mazá")
engadir(lista_compra, "laranxa")
print("A lista da compra actual é:", lista_compra) # Mostrar o resultado
Tarefa 2: Crear unha función para eliminar elementos
Duración:
15 min
Agrupamento:
Individual
Agora introduciremos outra función chamada eliminar. Comprobaremos se o elemento existe antes de eliminalo.
Enunciado: Crea unha función chamada eliminar que elimine un elemento da lista utilizando o método remove. Se o elemento non está na lista, debe avisar á usuaria cunha mensaxe.
Código Python: Función borrar
def eliminar(lista, elemento):
if elemento in lista: # Comprobar se o elemento existe
lista.remove(elemento) # Eliminar o elemento
print(elemento, "eliminado da lista.") # Confirmación
else:
print(elemento, "non está na lista.") # Aviso se non existe
# Proba a función
lista_compra = ["mazá", "laranxa"] # Lista inicial
eliminar(lista_compra, "mazá") # Eliminar "mazá"
eliminar(lista_compra, "pera") # Intentar eliminar "pera"
print("A lista da compra actual é:", lista_compra) # Mostrar o resultado
Tarefa 3: Crear unha función para mostrar os elementos
Duración:
15 min
Agrupamento:
Individual
Unha terceira función servirá para mostrar os elementos da lista.
Enunciado: Crea unha función chamada mostrar que amose todos os elementos da lista.
Código Python: Función mostrar
def mostrar(lista):
print("A lista da compra é:", lista) # Mostrar a lista
# Proba a función
lista_compra = ["mazá", "laranxa"] # Lista inicial
mostrar(lista_compra) # Chamar a función para mostrar os elementos
Tarefa 4: Introducir interacción coa usuaria
Duración:
15 min
Agrupamento:
Individual
Aquí empezaremos a ver o concepto de reutilización e a razón de ser das funcións como código independente e reutilizable.
Agora, combinaremos as tres funcións anteriores para permitir á usuaria seleccionar unha acción: engadir, eliminar ou mostrar.
Enunciado: Crea un programa que lle pida á usuaria que escolla unha acción entre "engadir", "eliminar" ou "mostrar", e utilice as funcións creadas. Proba o programa con varias entradas.
Código Python: Programa para escoller acción
def engadir(lista, elemento):
lista.append(elemento)
print(elemento, "engadido á lista.")
def eliminar(lista, elemento):
if elemento in lista:
lista.remove(elemento)
print(elemento, "eliminado da lista.")
else:
print(elemento, "non está na lista.")
def mostrar(lista):
print("A lista da compra é:", lista)
# Programa principal
lista_compra = [] # Iniciar a lista baleira
print("Escolle entre: 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")
while True:
accion = input("\nQue queres facer? ").lower() # Pedir a acción á usuaria
if accion == "engadir":
elemento = input("Que queres engadir á lista? ") # Pedir o elemento
engadir(lista_compra, elemento)
elif accion == "eliminar":
elemento = input("Que queres eliminar da lista? ") # Pedir o elemento
eliminar(lista_compra, elemento)
elif accion == "mostrar":
mostrar(lista_compra)
elif accion == "rematar":
print("Programa finalizado. Grazas por usar o xestor da lista da compra!")
break
else:
print("Acción non válida. Por favor, escolla entre 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")
Tarefa 5: Cambiar a estrutura para usar un conxunto
Duración:
15 min
Agrupamento:
Individual
Finalmente, adaptaremos o programa para usar un conxunto en lugar de unha lista. Desta maneira, garantiremos que os elementos da lista da compra sexan únicos.
Enunciado: Adapta o código anterior para que a lista da compra sexa un conxunto en vez de unha lista.
Código Python: Lista da compra con conxunto
def engadir(conxunto, elemento):
conxunto.add(elemento)
print(elemento, "engadido á lista.")
def eliminar(conxunto, elemento):
if elemento in conxunto:
conxunto.remove(elemento)
print(elemento, "eliminado da lista.")
else:
print(elemento, "non está na lista.")
def mostrar(conxunto):
print("A lista da compra é:", conxunto)
# Programa principal
lista_compra = set() # Iniciar a lista como un conxunto
print("Escolle entre: 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")
while True:
accion = input("\nQue queres facer? ").lower()
if accion == "engadir":
elemento = input("Que queres engadir á lista? ")
engadir(lista_compra, elemento)
elif accion == "eliminar":
elemento = input("Que queres eliminar da lista? ")
eliminar(lista_compra, elemento)
elif accion == "mostrar":
mostrar(lista_compra)
elif accion == "rematar":
print("Programa finalizado. Grazas por usar o xestor da lista da compra!")
break
else:
print("Acción non válida. Por favor, escolla entre 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")
Tarefa 6 : Programa xestor da lista da compra
Duración:
15 min
Agrupamento:
2
Basándovos nos vosos programas previos, creade un programa que permita á usuaria xestionar unha lista da compra.
A usuaria debe poder seleccionar unha das seguintes accións:
Engadir un elemento á lista cunha función que use o método append(listas) ou add(conxuntos)
Eliminar un elemento da lista cunha función que use o método remove
Mostrar a lista completa.
O programa debe seguir executándose ata que a usuaria escriba "rematar" como acción.
Ademais, se tenta eliminar un elemento que non está na lista, o programa debe avisar á usuaria.
Explica a diferencia se usades listas ou conxuntos.Probade a incluir nun programa e no outro dúas veces mazá...que ocorre?
Con listas sen comprobar se o elemento que queremos engadir, xa está nela.Se introducides 2 veces mazá, aparecerá 2 veces na lista.
Código Python: Lista da compra con listas
def engadir(lista, elemento):
lista.append(elemento) # Engade o elemento á lista
print(elemento, "engadido á lista.") # Confirmación
def eliminar(lista, elemento):
if elemento in lista:
lista.remove(elemento) # Elimina o elemento da lista
print(elemento, "eliminado da lista.") # Confirmación
else:
print(elemento, "non está na lista.") # Mensaxe de erro
def mostrar(lista):
print("A lista da compra é:", lista) # Mostra o contido da lista
# Programa principal
lista_compra = [] # Lista baleira
print("Benvida ao xestor da lista da compra!")
print("Podes escoller: 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")
while True:
accion = input("\nQue queres facer? ").lower() # Pedir a acción á usuaria
if accion == "engadir":
elemento = input("Que queres engadir á lista? ") # Pedir o elemento
engadir(lista_compra, elemento) # Chamar a función engadir
elif accion == "eliminar":
elemento = input("Que queres eliminar da lista? ") # Pedir o elemento
eliminar(lista_compra, elemento) # Chamar a función eliminar
elif accion == "mostrar":
mostrar(lista_compra) # Chamar a función mostrar
elif accion == "rematar":
print("Programa finalizado. Grazas por usar o xestor da lista da compra!")
break # Sair do bucle
else:
print("Acción non válida. Por favor, escolle entre 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")
Se non queremos que haxa elementos repetidos na lista da compra, usar un conxunto (set) sería unha solución máis eficiente, xa que os conxuntos en Python almacenan elementos únicos automaticamente. Isto elimina a necesidade de verificar manualmente se un elemento xa está presente antes de engadilo.Se introducides 2 veces mazá, aparecerá só unha vez.
Ademais, os conxuntos ofrecen operacións rápidas para engadir e eliminar elementos, así como para comprobar a pertenza, polo que melloran o rendemento en comparación con listas en escenarios con moitos elementos.
Código Python: Lista da compra con conxuntos
def engadir(lista, elemento):
lista.append(elemento) # Engade o elemento á lista
print(elemento, "engadido á lista.") # Confirmación
def eliminar(lista, elemento):
if elemento in lista:
lista.remove(elemento) # Elimina o elemento da lista
print(elemento, "eliminado da lista.") # Confirmación
else:
print(elemento, "non está na lista.") # Mensaxe de erro
def mostrar(lista):
print("A lista da compra é:", lista) # Mostra o contido da lista
# Programa principal
lista_compra = [] # Lista baleira
print("Benvida ao xestor da lista da compra!")
print("Podes escoller: 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")
while True:
accion = input("\nQue queres facer? ").lower() # Pedir a acción á usuaria
if accion == "engadir":
elemento = input("Que queres engadir á lista? ") # Pedir o elemento
engadir(lista_compra, elemento) # Chamar a función engadir
elif accion == "eliminar":
elemento = input("Que queres eliminar da lista? ") # Pedir o elemento
eliminar(lista_compra, elemento) # Chamar a función eliminar
elif accion == "mostrar":
mostrar(lista_compra) # Chamar a función mostrar
elif accion == "rematar":
print("Programa finalizado. Grazas por usar o xestor da lista da compra!")
break # Sair do bucle
else:
print("Acción non válida. Por favor, escolle entre 'engadir', 'eliminar', 'mostrar' ou 'rematar'.")