Contenido del capítulo

En este capítulo introductorio a las listas, aprenderás todo lo necesario sobre las listas en Python, desde su estructura hasta el uso práctico de sus principales métodos.

Duración estimada de todo el contenido:
Duración del vídeo:
Contiene 13 ejercicios de Python para resolver. Contiene 4 vídeos.
Tabla de contenidos
Logo

    ¿Qué son las listas de Python?

    Las listas son estructuras de datos que se utilizan para almacenar colecciones ordenadas de elementos. Estos elementos pueden ser de cualquier tipo, como números, cadenas de caracteres, booleanos o incluso otras listas.

    Introducción a las listas - Python
    Introducción a las listas - Python

    Espacio publicitario

    ¿Array y lista son lo mismo?

    Esto es una lista de Python:

    camiseta = ["rojo", "L", 100, 10]

    Si ya sabes programar en algún lenguaje de programación, habrás tratado el tema de los arrays o arreglos. En ese caso puede que te preguntes si las listas de Python son lo mismo.

    Las listas son estructuras muy parecidas a los array (en algunos aspectos). Sin embargo, no son arrays estrictamente hablando.

    Los arrays en casi todos los lenguajes de programación, son estructuras de datos que almacenan una secuencia de elementos del mismo tipo.

    Por ejemplo, en Java, un array se ve así:

    int[] array = {1, 2, 3, 4, 5};

    Java no admite que tengamos diferentes tipos de datos en sus arrays.

    En cambio, las listas de Python son capaces de almacenar diferentes tipos de datos mezclados, si es lo que queremos, claro. Aunque perfectamente pueden ser todos del mismo tipo de dato.

    Hay detalles técnicos que marcan la diferencia, pero no son relevantes para una introducción a las listas de Python.

    ¿Para qué queremos listas en Python?

    Gracias a las listas, podremos agrupar datos que estén relacionados. Mira este ejemplo con cuatro variables:

    # Camiseta
    color = "rojo"
    talla = "L"
    precio = 100
    cantidad = 10
    Camiseta con el logo de pythonmaster.tech

    Supongamos que estas variables, están escritas para representar los atributos que describen a un producto textil, como una camiseta.

    En principio, mirando las variables así, podemos pensar que están relacionadas, y que están describiendo el color, la talla, el precio y la cantidad de existencias (stock) de ese producto.

    Espacio publicitario

    Sin embargo, estas variables no tienen una relación real entre ellas. Son solo datos sueltos, en cuatro variables sueltas.

    ¿No sería genial agrupar estos datos?

    Si agrupamos los datos con una lista, los tendremos almacenados en una sola variable, tengamos cuatro datos, o quinientos.

    Gracias al paradigma de la programación orientada a objetos, podrás hacer cosas más complejas que estas agrupaciones de lista.

    Lista en inglés se dice list.

    Sintaxis de una lista Python

    La sintaxis de las listas de Python es la siguiente:

    [elemento1, elemento2, elemento3, .]

    Una lista se crea con unos corchetes [], y entre ellos especificamos tantos elementos como queramos, separados por comas.

    Los elementos pueden ser de cualquier tipo que soporte Python, ya sea str, bool, int, float

    Las listas son consideradas como tipos de datos (objetos en Python). Concretamente, el tipo de dato de una lista, es list.

    Creando una lista de Python

    Ahora, vamos a crear la lista con los datos de antes:

    color = "rojo"
    talla = "L"
    precio = 100
    cantidad = 10

    Para este propósito, vamos a guardar la lista dentro de una variable, así podremos manejarla, al estar asociada a un identificador:

    camiseta = ["rojo", "L", 100, 10]

    Ahora tenemos todos los datos asociados a un solo elemento. Gracias a esto, hemos simplificado el código.

    ¿Cómo se muestra una lista en la consola?

    Para imprimir una lista como la anterior, solo tienes que llamar a la variable que la contiene:

    camiseta = ["rojo", "L", 100, 10]
                          
    print(camiseta)
    Resultado en la consola
    ['rojo', 'L', 100, 10]

    Espacio publicitario

    índice de posiciones en las listas

    El índice de posición es una numeración que tienen las listas en cada una de sus posiciones. Gracias a este índice, podemos manipular cada elemento de la lista de manera individual.

    El índice de posición de una lista empieza a contar desde el número 0.

    Veamos la siguiente lista:

    colores = ["azul", "verde", "rojo"]

    En esta lista las posiciones del índice serán las siguientes:

    • "azul": posición 0
    • "verde": posición 1
    • "rojo": posición 2

    Entonces, contaremos un total de tres elementos en la lista. Estos con las posiciones de índice del 0 al 2.

    Sintaxis de asignación en listas

    Para asignar un valor a cierta posición de una lista, lo haremos de forma parecida a la asignación de valores a las variables. Solo que tendremos que añadir un valor extra, el conocido como índice de posición.

    En el siguiente ejemplo, estoy reasignando el valor "amarillo" a la posición 0 del índice de la lista colores:

    colores = ["azul", "verde", "rojo"]
                            
    # Reasigna el valor a la posición 0 de la lista
    colores[0] = "amarillo"
    
    # Imprime el resultado
    print(colores)
    Resultado en la consola
    ['amarillo', 'verde', 'rojo']

    El valor que está sobre la posición indicada entre los corchetes, es reasignado con el nuevo valor

    Entonces, el valor anterior, "azul", ha sido sustituido por el valor "amarillo". El resto de elementos sigue igual.

    Hemos podido hacer esta acción gracias al índice de posición de la lista. Ya que si no especificas una posición en concreto, reasignas el valor frente a la lista entera.

    Puedes apreciar eso mismo en este ejemplo:

    colores = ["azul", "verde", "rojo"]
    
    # Reasigna el valor a la variable
    colores = "amarillo"
    
    # Imprime el resultado
    print(colores)
    
    Resultado en la consola
    amarillo

    Error por número de índice inexistente

    Si pones una posición que no existe, y le intentas asignar un valor, te ocurrirá el siguiente error:

    colores = ["azul", "verde", "rojo"]
    
    # Asigna el valor a la posición 7 de la lista
    colores[7] = "amarillo"
    
    # Comprobamos el resultado
    print(colores)
    Error en la consola
    IndexError: list assignment index out of range
    Error de índice: el índice de asignación de la lista está fuera de rango

    Sencillamente, nos indica que el número indicado entre los corchetes, se ha salido del rango de posiciones del índice.

    En el caso de esta lista, puesto que tiene tres elementos, (va del 0 al 2) no tiene posición de índice 7.

    Espacio publicitario

    Métodos para añadir elementos en listas

    Métodos para añadir elementos a listas de Python
    Métodos para añadir elementos a listas de Python

    Ahora que ya sabes lo más básico de las listas de Python, ha llegado el momento de empezar a utilizar métodos con ellas.

    Las listas cuentan con muchos métodos para hacer cosas con ellas, al igual que ocurre con las cadenas de caracteres.

    Todos los cambios que van realizando los métodos, ocurren en tiempo de ejecución (mientras se ejecuta el programa). Por lo tanto, si no tenemos un medio para guardar los datos que añadimos, o manipulamos de alguna forma en las listas, al finalizar la ejecución, se borran. Para guardarlos permanentemente, deberás dominar el uso de bases de datos.

    El método append() para listas de Python

    El método append() sirve para añadir un elemento al final de una lista. Para usarlo solo tenemos que poner el nombre de la lista, un punto, y entre los paréntesis del método, indicar que es lo que queremos añadir.

    Sintaxis del método append()

    La sintaxis de este método es muy sencilla, solo necesitas especificar un elemento entre sus paréntesis:

    lista.append(elemento)
                        

    En el siguiente código tienes un ejemplo de uso:

    colores = ["azul", "verde", "rojo"]
    
    # Añade el elemento "amarillo" al final de la lista
    colores.append("amarillo")
    
    print(colores)
    Resultado en la consola
    ['azul', 'verde', 'rojo', 'amarillo']

    El nombre del método append puede ser traducido al español como adjuntar, añadir, agregar...

    El método insert() para listas de Python

    El método insert() de Python también permite insertar un elemento en una lista.
    La diferencia con el método anterior, es que con este método podemos especificar una posición concreta en la que queremos insertar el elemento.

    Sintaxis del método insert()

    El método insert() acepta dos argumentos. Por un lado, el índice de posición donde quieres añadir el valor (posición), y por el otro el valor que deseas añadir (elemento).

    nombre_lista.insert(posición, elemento)

    A continuación, tienes una inserción de una cadena de caracteres con valor "amarillo", en la posición 0 de la lista:

    colores = ["azul", "verde", "rojo"]
    
    # Se añade el elemento "amarillo" en la posición 0 del índice
    colores.insert(0, "amarillo")
    
    print(colores)
    Resultado en la consola
    ['amarillo', 'azul', 'verde', 'rojo']
                          

    Al indicar la posición 0 del índice, lo que he hecho es mover el elemento que estaba en la posición 0, hacia la posición 1, el de la 1 a su vez, se va a la 2, y así con todos los elementos posteriores a la posición indicada en la llamada del método insert().

    Espacio publicitario

    Índice inexistente

    Con este método, si indicas una posición de índice inexistente, Python solucionará el fallo. A pesar de ello, intenta no equivocarte con esto, ya que puede dificultar la interpretación del código por parte de las personas.

    En el siguiente ejemplo, al poner una posición 7, y solo existir de la 0 a la 2, creo cierta confusión con algo tan simple:

    colores = ["azul", "verde", "rojo"]
    
    # Inserta el elemento "amarillo" en la posición 7
    colores.insert(7, "amarillo")
    
    print(colores)
    Resultado en la consola
    ['azul', 'verde', 'rojo', 'amarillo']
                              

    Si pones un número que se sale de rango, el elemento ocupará la posición inmediata al último elemento. En este ejemplo, la 3.

    El nombre del método insert puede ser traducido al español como insertar.

    El método extend() para listas Python

    El método extend() de Python, sirve para “extender” una lista a partir de un elemento iterable (no todos los tipos de datos son iterables).

    Por lo de iterable, es algo que tiene que ver con el tema de los bucles, así que no le des demasiada importancia ahora mismo. En resumidas cuentas, un iterable es un elemento que puede ser recorrido elemento a elemento.

    Un ejemplo de elemento iterable es una lista.

    Sintaxis del método extend()

    El método extend() espera un único argumento en su llamada, un elemento iterable.

    nombre_lista.extend(iterable)

    Veamos un ejemplo de uso:

    Contamos con dos listas, las cuales, son elementos iterables. Si quieres fusionar los datos que hay almacenados en ambas, lo puedes hacer así de fácil:

    colores1 = ["azul", "verde", "rojo"]
    colores2 = ["amarillo", "naranja", "marrón"]
    
    # Extiende la lista
    colores1.extend(colores2)
    
    print(colores1)
    Resultado en la consola
    ['azul', 'verde', 'rojo', 'amarillo', 'naranja', 'marrón']

    La lista colores1 ahora tiene sus propios datos, más los datos de la otra lista. Estos se han añadido al final de los elementos que ya tenía.

    La lista colores2, se queda igual, con sus propios datos.

    Lo que le decimos al intérprete de Python podría traducirse como: “extiende los datos de colores1 con los de colores2”.

    El nombre del método extend puede ser traducido al español como extender.

    Espacio publicitario

    Otra forma de unir dos listas es mediante la concatenación:

    colores1 = ["azul", "verde", "rojo"]
    colores2 = ["amarillo", "naranja", "marrón"]
    
    # Concatena las listas
    colores1 = colores1 + colores2
    
    print(colores1)
    Resultado en la consola
    ['azul', 'verde', 'rojo', 'amarillo', 'naranja', 'marrón']
    

    He de indicar que utilizar extend() es más eficiente en el uso de recursos del sistema que concatenar.

    Métodos para eliminar elementos en listas Python

    Métodos para eliminar elementos de listas de Python
    Métodos para eliminar elementos de listas de Python

    Veamos algunos métodos para eliminar elementos ya existentes en las listas.

    El método pop() para listas

    El método pop() sirve para eliminar un elemento de una lista. Este método puede ser utilizado de dos formas. Con un argumento, o sin él.

    Eliminar la última posición de lista con pop()

    Para eliminar la última posición de una lista, simplemente utilizaremos pop() sin argumentos.

    En el siguiente ejemplo, se elimina el valor "rojo", por encontrarse en la última posición de la lista:

    colores = ["azul", "verde", "rojo"]
    
    # Se elimina el último elemento de la lista
    colores.pop()
    
    print(colores)
    Resultado en la consola
    ['azul', 'verde']

    Eliminar un elemento concreto con pop()

    En el siguiente ejemplo, se elimina el elemento en la posición 0 de la lista. Esto es posible al pasar el número de posición como argumento del método pop():

    colores = ["azul", "verde", "rojo"]
    
    # Elimina el elemento de la posición 0
    colores.pop(0)
    
    print(colores)
    Resultado en la consola
    ['verde', 'rojo']

    Espacio publicitario

    Error con pop()

    Ten cuidado con la posición del índice. Si pones un número inexistente en la lista, te dará un error:

    colores = ["azul", "verde", "rojo"]
    
    # Elimina el elemento de la posición 7
    colores.pop(7)
    
    print(colores)
    Error en la consola
    IndexError: pop index out of range
    Error de índice: El índice de pop, está fuera de rango

    Podemos ver que nos produce un error por índice inexistente. Este fallo tan “tonto”, hará que un programa completo se cierre de forma inesperada.

    El término pop se traduce al español como sacar o extraer.

    Hay que tener en cuenta que esta traducción se hace en el contexto de Python, ya que pop puede tener otras muchas traducciones diferentes en otros ámbitos.

    El método remove()

    El método remove() elimina un elemento literal concreto.

    Sintaxis del método remove()

    La forma de uso que le podemos dar a este método, es nombrando un valor literalmente. Este se eliminará si se encuentra en la lista

    nombre_lista.remove(elemento)

    En el siguiente ejemplo, el método es utilizado para eliminar el valor "rojo", especificándolo literalmente en la llamada al método remove():

    colores = ["azul", "verde", "rojo"]
    
    # Elimina el elemento "rojo"
    colores.remove("rojo")
    
    print(colores)
    Resultado en la consola
    ['azul', 'verde']

    El método remove() no elimina duplicados

    Algo que debes tener en cuenta, es que aunque en una lista haya varias coincidencias del mismo valor literal, el método remove(), solo va a eliminar la primera que encuentre. Por ejemplo:

    colores = ["rojo","azul", "rojo", "verde", "rojo"]
    
    # Elimina el primer elemento "rojo"
    colores.remove("rojo")
    
    print(colores)
    Resultado en la consola
    ['azul', 'rojo', 'verde', 'rojo']

    Tal y como puedes ver, se ha eliminado solo el primer valor "rojo" que ha encontrado. El de la posición 0 en este ejemplo.

    Si ponemos varios remove(), se van eliminando sucesivamente:

    colores = ["rojo","azul", "rojo", "verde", "rojo"]
    
    # Elimina un elemento "rojo"
    colores.remove("rojo")
    print(colores)
    
    # Elimina un elemento "rojo"
    colores.remove("rojo")
    print(colores)
    
    # Elimina un elemento "rojo"
    colores.remove("rojo")
    print(colores)
    Resultado en la consola
    ['azul', 'rojo', 'verde', 'rojo']
    ['azul', 'verde', 'rojo']
    ['azul', 'verde']

    Error con remove()

    También tendrás que tener cuidado con no equivocarte en el dato que quieres eliminar. Si no existe en la lista, te arrojará el siguiente error:

    colores = ["azul", "verde", "rojo"]
    
    # Elimina el elemento "amarillo"
    colores.remove("amarillo")
    
    print(colores)
    Error en la consola
    ValueError: list.remove(x): x not in list
    Error de valor: el elemento x no está en la lista

    El término remove se traduce al español como eliminar

    Espacio publicitario

    Métodos para buscar elementos en listas de Python

    Métodos para buscar elementos de listas Python
    Métodos para buscar elementos de listas Python

    Veamos algunos métodos para eliminar elementos en listas.

    El método index()

    El método index() se encarga de buscar un elemento en una lista. Solo va a buscar hasta encontrarlo una vez; si está repetido, ignora el resto de resultados. Si encuentra la coincidencia, nos devolverá el número de posición del índice donde aparece. En cambio, si no hay coincidencia, nos arrojará un error.

    Sintaxis del método index()

    La sintaxis del método index() es la siguiente:

    nombre_lista.index(elemento)

    Ejemplo de uso del método index()

    Mira el siguiente ejemplo. Contamos con una lista con varios valores numéricos.

    En la variable busca_numero, estoy indicando el uso del método index(), y le doy un valor de 10. Ese es el que quiero que busque.

    numeros = [87, 10, 5, 7, 378, 10, 10, 65, 10]
    
    # Guardamos lo que devuelve index() en una variable
    busca_numero = numeros.index(10)
    
    print(busca_numero)
    Resultado en la consola
    1

    El resultado que nos deja guardado en la variable busca_numero es 1.

    Eso es porque ha encontrado el primer 10 en la posición 1 del índice. El resto de valores 10, tal y como he indicado, los ignora.

    Error con index()

    Con el método index(), si le pasamos un valor inexistente, nos va a dar el siguiente error:

    numeros = [87, 10, 5, 7, 378, 10, 10, 65, 10]
    
    # Guardamos lo que devuelve index() en una variable
    busca_numero = numeros.index(1000)
    
    print(busca_numero)
    Error en la consola
    ValueError: 1000 is not in list
    Error por valor: 1000 no está en la lista

    El término index puede ser traducido como índice en español.

    El método count()

    El método count() también busca elementos en las listas, pero es sustancialmente diferente. Este método busca todas las coincidencias y nos dice cuántas hay en una lista.

    Sintaxis del método count()

    La sintaxis del método count() es la siguiente:

    nombre_lista.count(valor_busqueda)

    Ejemplo de uso del método count()

    Veamos un ejemplo práctico con este método:

    En una variable (valor_busqueda) especifico el valor que quiero buscar. Esto no es obligatorio, ya que este valor se lo puedo pasar al método directamente sin la variable. El motivo de guardarlo en una variable, es para tener un programa con diferentes posibilidades. Por ejemplo, esta variable podría ser para almacenar un input(), y mediante el valor pasado en la consola, tendríamos un buscador de valores.

    Espacio publicitario

    Finalmente, utilizo el método con el valor proporcionado, y este me dice cuantas coincidencias hay en la lista:

    numeros = [87, 10, 5, 7, 378, 10, 10, 65, 10]
    
    # Especificamos un valor de búsqueda
    valor_busqueda = 10
    
    # Buscamos el total de coincidencias
    coincidencias = numeros.count(valor_busqueda)
    
    print(f"En total, el valor de búsqueda {valor_busqueda}, tiene {coincidencias} coincidencias.")
    Resultado en la consola
    En total, el valor de búsqueda 10, tiene 4 coincidencias.
                          

    Si en la búsqueda no hay ningún resultado, no nos produce ningún error, sencillamente, almacena un 0:

    valor_busqueda = 1000
    Resultado en la consola
    En total, el valor de búsqueda 1000, tiene 0 coincidencias.

    El término count se puede traducir al español como contar.

    De hecho, es exactamente lo que hace el método count(). Cuenta las coincidencias.

    Espacio publicitario




    Espacio publicitario


    Ejercicios de Python para resolver

    31. Crea una lista que contenga los siguientes valores:

    • 4245
    • 54.6
    • 'viento'
    • True

    Después, imprímela en la consola con una frase como "Los valores en la lista son:", y que muestre todos sus elementos.

    El resultado en la consola deberá ser exactamente este:

    Los elementos de la lista son: [4245, 54.6, 'viento', True]

    Una forma de resolverlo sin complicaciones, es esta:

    # Crear la lista con los valores solicitados
    lista_variada = [4245, 54.6, 'viento', True]
    
    # Imprimir la frase
    print("Los elementos de la lista son:", lista_variada)
    Resultado en la consola
    Los elementos de la lista son: [4245, 54.6, 'viento', True]

    32. Añade un color cualquiera al final de la lista colores1, utilizando el método append().

    colores1 = ["azul", "verde", "rojo"]
    colores1 = ["azul", "verde", "rojo"]
    
    # Añadir el color amarillo a la lista
    colores1.append("amarillo")
    
    print(colores1)
    Resultado en la consola
    ['azul', 'verde', 'rojo', 'amarillo']

    33. Añade todos los elementos de la lista colores2 al final de la lista colores1, utilizando el método extend().

    colores1 = ["azul", "verde", "rojo"]
    colores2 = ["amarillo", "naranja", "marrón"]
    colores1 = ["azul", "verde", "rojo"]
    colores2 = ["amarillo", "naranja", "marrón"]
    
    # Extender la lista colores1
    colores1.extend(colores2)
    
    print(colores1)
    Resultado en la consola
    ['azul', 'verde', 'rojo', 'amarillo', 'naranja', 'marrón']

    34. Inserta el color "gris" en la posición 2 de la lista colores1, utilizando el método insert().

    colores1 = ["azul", "verde", "rojo"]

    Recuerda que las posiciones del índice se empiezan a contar desde el 0, no desde el 1.

    colores1 = ["azul", "verde", "rojo"]
    
    # Insertar el color gris en la posición 2
    colores1.insert(2, "gris")
    
    print(colores1)
    Resultado en la consola
    ['azul', 'verde', 'gris', 'rojo']

    35. Añade el color "blanco" al principio de la lista colores1, utilizando el método insert().

    colores1 = ["azul", "verde", "rojo”]
    colores1 = ["azul", "verde", "rojo"]
    
    # Insertar el color blanco en la posición 0
    colores1.insert(0, "blanco")
    
    print(colores1)
    Resultado en la consola
    ['blanco', 'azul', 'verde', 'rojo']

    Espacio publicitario


    Para realizar los siguientes ejercicios, cuentas con la siguiente lista:

    colores = ["azul", "verde", "rojo", "amarillo", "naranja", "marrón"]

    36. Responde si la ejecución de estos métodos dará error o no. Intenta contestar antes de probarlo en el código.

    1. colores.pop(6)
    2. colores.remove(2)
    3. colores.pop(3)
    4. colores.remove("magenta")
    5. colores.remove("rojo")
    6. colores.pop("verde")

    En los diferentes apartados te voy poniendo si ejecuta sin error o no, o el propio error que produce.

    Por supuesto, no tienes por qué acertar el tipo de error, solo tenías que saber si daba error o no.

    Te pongo aquí los errores concretos, para que vayas aprendiendo un poco más:

    1. IndexError: pop index out of range (El índice 6 no existe). Solo hay hasta el 5 en la lista.
    2. ValueError: list.remove(x): x not in list (No se puede usar un número de posición en el remove(). Tiene que ser el valor del propio elemento. Por ejemplo, "amarillo". Este valor 2, utilizado en el ejemplo, intenta eliminar de la lista un valor literal de tipo int (2).
    3. Este es correcto. Se elimina el valor de la posición 3 del índice, que es el color "amarillo".
    4. ValueError: list.remove(x): x not in list (El valor "magenta", no existe en la lista).
    5. Este es correcto. Se elimina el valor "rojo" de la lista.
    6. TypeError: 'str' object cannot be interpreted as an integer (Tienes que darle un número de posición de índice a este método, no un valor literal como un str).

    37. Elimina de la lista el color "verde", con el método pop().

    El color "verde" está en la posición 1 del índice:

    colores = ["azul", "verde", "rojo", "amarillo", "naranja", "marrón"]
    colores.pop(1)
    
    print(colores)
    Resultado en la consola
    ['azul', 'rojo', 'amarillo', 'naranja', 'marrón']

    38. Elimina de la lista el color "azul", con el método remove().

    Con el método remove(), la posición del índice no importa, solo el valor literal del elemento que quiero eliminar:

    colores = ["azul", "verde", "rojo", "amarillo", "naranja", "marrón"]
                                
    colores.remove("azul")
    
    print(colores)
    Resultado en la consola
    ['verde', 'rojo', 'amarillo', 'naranja', 'marrón']

    39. Ahora, tendrás que eliminar dos colores. Los que quieras. Además, lo puedes hacer con el método que quieras.

    En el siguiente código, encontrarás una lista con valores (colores), y otra vacía (eliminados), para ir añadiendo elementos:

    # Lista con colores
    colores = ["azul", "verde", "rojo", "amarillo", "naranja", "marrón"]
    
    # Lista para guardar valores eliminados
    eliminados = []
    
    # Se eliminan los elementos y se guardan en la lista
    eliminados.append()# Utiliza un método aquí
    eliminados.append()# Utiliza un método aquí
    
    # Imprime una frase con los dos colores eliminados
    print()# Frase aquí

    Tienes que guardar los dos valores eliminados en la lista eliminados, y mostrar los resultados en la consola, en una frase como esta:

    Los valores eliminados de la lista son: verde y amarillo.

    Esta frase la debes formar con los valores de la lista eliminados; tan solo tienes que rellenar estas partes del código:

    # Se eliminan los elementos y se guardan en la lista
    eliminados.append()# Utiliza un método aquí
    eliminados.append()# Utiliza un método aquí
    
    # Imprime una frase con los dos colores eliminados
    print()# Frase aquí

    Utiliza un método de eliminación de listas, en cada uno de los paréntesis de los append(). Con ello, se añadirán dos valores a la lista eliminados.

    Finalmente, tendrás que formar la frase con la posición 0 y 1 de la lista eliminados. No tienes que tocar nada más.

    Ten en cuenta, que si eliminas un elemento, desplazarás a otros de posición en el índice.

    Primero de todo, la lista eliminados, es una lista vacía, la cual, nos sirve para ir rellenándola.

    El método append() se utiliza para añadir elementos a las listas. Nosotros queremos añadir los elementos que se eliminen, por raro que suene, es una acción muy común en programación.

    Entonces, dentro del append(), especificamos el método de eliminación.

    Si usas remove() te devuelve valores nulos de tipo None. Entonces, solo te quedaba probar con el método pop().

    # Lista con colores
    colores = ["azul", "verde", "rojo", "amarillo", "naranja", "marrón"]
    
    # Lista para guardar valores eliminados
    eliminados = []
    
    # Se eliminan los elementos y se van guardando en la lista
    eliminados.append(colores.pop(1))
    eliminados.append(colores.pop(2))
    
    # Imprime una frase con los dos colores eliminados
    print(f"Los colores eliminados son {eliminados[0]} y {eliminados[1]}.")
    Resultado en la consola
    Los colores eliminados son verde y amarillo.

    Este ejercicio es muy sencillo, pero claro, si sabes hacerlo.

    Hayas podido resolverlo o no, ahora conoces esto, y te será de gran utilidad en el futuro.

    Por cierto, en el ejercicio había una dificultad más, que los elementos, al eliminarse, van cambiando de número de posición en el índice.

    Quizás te hayas fijado en que he puesto para eliminar la posición 1 y 2. Eso, teóricamente, eliminaría "verde" y "rojo".

    Entonces, ¿por qué se elimina "verde" y "amarillo"?

    Al eliminar "verde", los colores de la lista se ordenan así:

    ['azul', 'rojo', 'amarillo', 'naranja', 'marrón']

    Fíjate en que se han movido para adaptarse al índice.

    El elemento "amarillo" ha pasado de estar en el índice 3, inicialmente, al 2. Esto es porque se ha eliminado el elemento que estaba en la posición 1.

    Entonces, "rojo", que estaba en la posición 2, se ha movido a la 1, y "amarillo" a la 2. Así lo mismo con los siguientes elementos.

    Por lo tanto, ten muy en cuenta estas acciones de eliminación, y ves aprendiendo de ellas. Si necesitas saber que ocurre en cada momento, utiliza print() para verlo, como en el siguiente ejemplo:

    # Lista con colores
    colores = ["azul", "verde", "rojo", "amarillo", "naranja", "marrón"]
    
    # Lista para guardar valores eliminados
    eliminados = []
    
    # Se eliminan los elementos y se van guardando en la lista
    eliminados.append(colores.pop(1))
    print(colores)
    
    eliminados.append(colores.pop(2))
    print(colores)
    Resultado en la consola
    ['azul', 'rojo', 'amarillo', 'naranja', 'marrón']
    ['azul', 'rojo', 'naranja', 'marrón']

    Espacio publicitario


    Para los siguientes ejercicios, utiliza esta lista:

    numeros = [7, 14, 16, 657, 10.8, 7, 55, 56, 56, 43, 56, 7]

    40. Con un método para listas, busca si el valor 70 está en ella.

    Si has decidido usar el método index(), habrás recibido un error, puesto que el valor 70 no está en la lista

    Con el método count(), nos devuelve (da) un 0, que puede ser interpretado por lógica, como un “no está en la lista”.

    En el caso de que hubiera una coincidencia, recibirías un valor 1, que puede ser interpretado por lógica, como “está en la lista una vez”.

    numeros = [7, 14, 16, 657, 10.8, 7, 55, 56, 56, 43, 56, 7]
    
    # Especificamos un valor de búsqueda
    valor_busqueda = 70
    
    # Buscamos el total de coincidencias
    coincidencias = numeros.count(valor_busqueda)
    print(coincidencias)
    Resultado en la consola
    0

    41. Busca cuantas ocurrencias hay del valor 7.

    En total, el valor se repite tres veces:

    numeros = [7, 14, 16, 657, 10.8, 7, 55, 56, 56, 43, 56, 7]
    # Especificamos un valor de búsqueda
    valor_busqueda = 7
    
    # Buscamos el total de coincidencias
    coincidencias = numeros.count(valor_busqueda)
    
    print(coincidencias)
    Resultado en la consola
    3

    42. Crea un buscador, o contador de elementos, con un método para listas apropiado para ello. Para hacerlo, tendrás que crear una entrada de datos en la consola. Este valor de entrada se guardará en una variable, para posteriormente, pasarle el valor de esta, al método utilizado.

    La lista sobre la que buscarás es la que tienes a continuación:

    colores = ["azul", "azul", "rojo", "azul", "verde", "verde", "azul", "verde", "rojo", "amarillo"]

    Cuando tengas el código, utiliza el buscador para contestar estas preguntas (ya sé que puedes contestarlas a ojo, pero se trata de que pruebes si lo puedes lograr hacer con tu buscador).

    1. ¿Cuántas veces se repite el color "azul"?
    2. ¿Cuántas veces se repite el color "amarillo"?
    3. ¿Cuántas veces se repite el color "verde"?

    Ten en cuenta que si no pones literalmente el valor con todas las mayúsculas y minúsculas iguales, como están en la lista, tu buscador no va a encontrar esos elementos. Python es case sensitive (distingue mayúsculas y minúsculas).

    Si no se te ocurre qué método utilizar, consulta los métodos disponibles para la clase list, la clase que genera las listas de Python. Seguro que entre los que hay, sabrás encontrar cuál te puede venir bien para resolver este ejercicio.

    Primero creamos el código que nos va a ayudar a responder las preguntas:

    # Lista de colores
    colores = ["azul", "azul", "rojo", "azul", "verde", "verde", "azul", "verde", "rojo", "amarillo"]
    
    # Pedir al usuario que introduzca el color a buscar
    color_busqueda = input("Introduce el color a buscar: ")
    
    # Método count() para contar veces que aparece el color
    veces_repetido = colores.count(color_busqueda)
    
    # Mostrar el resultado
    print(f"El color '{color_busqueda}' se repite {veces_repetido} veces en la lista.")

    Ahora que ya tenemos el código, es el momento de utilizar nuestro buscador y contador de elementos.

    A.

    Resultado en la consola
    Introduce el color a buscar: azul
    El color 'azul' se repite 4 veces en la lista.

    B.

    Resultado en la consola
    Introduce el color a buscar: amarillo
    El color 'amarillo' se repite 1 veces en la lista.

    C.

    Resultado en la consola
    Introduce el color a buscar: verde
    El color 'verde' se repite 3 veces en la lista.

    43. Mejora el buscador, y haz que independientemente de como se escriba el texto en la consola, en cuanto a mayúsculas o minúsculas, que coincida con los valores de la lista.

    Este método deberá aplicarse al valor que almacene el input() del buscador. Para ello, pon un punto pegado al input(), y el método necesario. Eso hará que el valor introducido en la consola, se transforme como necesites.

    Aquí tenías que añadir el uso del método lower(), puesto que en la lista están todos los valores en minúsculas. Así, aunque busques colores en mayúsculas, tu buscador seguirá funcionando

    # Lista de colores
    colores = ["azul", "azul", "rojo", "azul", "verde", "verde", "azul", "verde", "rojo", "amarillo"]
    
    # Pedir al usuario que introduzca el color a buscar
    color_busqueda = input("Introduce el color a buscar: ").lower()
    
    # Método count() para contar veces que aparece el color
    veces_repetido = colores.count(color_busqueda)
    
    # Mostrar el resultado
    print(f"El color '{color_busqueda}' se repite {veces_repetido} veces en la lista.")
    Resultado en la consola
    Introduce el color a buscar: AZUL
    El color 'azul' se repite 4 veces en la lista.


    Espacio publicitario