Lección 11 · 11 de 20
Trabajar con listas · Python
Añada, quite y ordene elementos de una lista de Python con append, insert, remove, pop y sort, y tome partes con el troceado [a:b].

Las listas tienen métodos: funciones que se escriben tras un punto y trabajan sobre esa lista. append("apples") añade al final e insert(0, "coffee") añade en la posición indicada, aquí la primera.
remove("bread") quita el primer elemento con ese valor. pop() quita el último y además lo devuelve, así que se puede guardar: last vale apples.
sort() ordena la lista de menor a mayor y la cambia en el sitio (no crea otra). Con sort(reverse=True) queda de mayor a menor: las mejores notas primero.
El troceado (*slicing*) toma una parte: scores[1:4] va de la posición 1 a la 3 (el final no entra). Si se omite el principio o el final, llega hasta el borde: scores[:3] son los tres primeros y scores[3:], el resto. scores[::-1] la da al revés.
index(88) busca un valor y dice en qué posición está: 1, porque tras ordenar de mayor a menor el 88 es el segundo.
Código · main.py
# A shopping list that grows and shrinks.shopping = ["milk", "bread", "eggs"]shopping.append("apples") # add at the endshopping.insert(0, "coffee") # add at a positionprint("After adding:", shopping)shopping.remove("bread") # remove by valuelast = shopping.pop() # remove the last one and return itprint("Removed:", last)print("Now:", shopping)# sort() puts the list in order (it changes the list itself).scores = [72, 95, 58, 88, 64]scores.sort()print("Sorted:", scores)scores.sort(reverse=True)print("Best first:", scores)# Slicing: list[start:stop] takes a part (stop is not included).print("Top 3:", scores[:3])print("The rest:", scores[3:])print("Middle:", scores[1:4])print("Backwards:", scores[::-1])print("Position of 88:", scores.index(88))Salida · python3 main.py
After adding: ['coffee', 'milk', 'bread', 'eggs', 'apples'] Removed: apples Now: ['coffee', 'milk', 'eggs'] Sorted: [58, 64, 72, 88, 95] Best first: [95, 88, 72, 64, 58] Top 3: [95, 88, 72] The rest: [64, 58] Middle: [88, 72, 64] Backwards: [58, 64, 72, 88, 95] Position of 88: 1
Para recordar
append()añade al final;insert(i, x)en la posicióni.remove(x)quita por valor;pop()quita el último y lo devuelve.sort()ordena;sort(reverse=True), al revés.lista[a:b]va deaab - 1;lista[::-1]invierte.
Ejercicio
Con la lista de notas, añada un 100 y un 47, ordénela, y escriba las dos peores notas con un troceado y la mediana (el elemento del centro).