Saltar al contenido

Python List: Comprensión, Apend, Sort, Length, Reverse EXAMPLES

diciembre 8, 2019

¿Qué es una lista Python?

Una lista es exactamente como suena, un contenedor que contiene diferentes objetos Python, que podrían ser enteros, palabras, valores, etc. Es el equivalente a un array en otros lenguajes de programación. Se representa con corchetes (y este es uno de los atributos que lo diferencian de las tuplas, que están separadas por paréntesis). También es mutable, es decir, puede ser modificado o actualizado; a diferencia de las tuplas, que son inmutables.

En este tutorial de python, aprenderás:

  • ¿Qué es una lista Python?
  • Ejemplos de listas de Python:
  • Acceso a valores dentro de listas
  • Corte de listas
  • Actualización de listas
  • Eliminación de elementos de la lista
  • Añadir elementos de la lista
  • Lista de funciones incorporadas (métodos)
  • Buscar en las listas
  • Comprensión de listas

Ejemplos de listas de Python:

Las listas Python pueden ser homogéneas, lo que significa que pueden contener el mismo tipo de objetos; o heterogéneas, incluyendo diferentes tipos de objetos.

Ejemplos de listas homogéneas incluyen:

Ejemplos de listas heterogéneas incluyen:

[2, $0027cat$0027, 34.33, $0027Travis$0027]
[2.22, 33, $0027pen$0027]

>

Acceso a valores dentro de listas

Para acceder a los valores dentro de las listas, se puede utilizar el índice de los objetos dentro de las listas. Un índice en las listas de Python se refiere a la posición de un elemento dentro de una lista ordenada. Por ejemplo:

  • El primer valor de la lista anterior, 3, tiene un índice de 0
  • El segundo valor, 22, tiene un índice de 1
  • El tercer valor, 30, tiene un índice de 2

y así sucesivamente. Para acceder a cada uno de los valores de la lista, se utilizaría:

list[0] para acceder a 3
lista[1] para acceder a 22
lista[2] para acceder a 30
lista[3] para acceder a 5.3
lista[4] para acceder a 20
>

También se puede acceder al último miembro de una lista utilizando el índice -1. Por ejemplo,

list[-1] = 20
>

Corte de listas

La fragmentación de listas es el método para dividir un subconjunto de una lista, y los índices de los objetos de la lista también se utilizan para ello. Por ejemplo, usando el mismo ejemplo de la lista anterior;

list[:] =[3, 22, 30, 5.3, 20] (todos los miembros de la lista);
list[1:3] =[22, 30] (miembros de la lista del índice 1 al índice 3, sin el miembro del índice 3);
lista[:4] =[3, 22, 30, 5.3] (miembros de la lista del índice 0 al índice 4, sin el miembro del índice 4)
lista[2:-1] =[30, 5.3] (miembros de la lista desde el índice 2, que es el tercer elemento, hasta el segundo y último elemento de la lista, que es el 5.3).

>

Las listas de Python son exclusivas de los límites superiores, y esto significa que el último índice durante el corte de listas es usualmente ignorado. Por eso

list[2:-1] =[30, 5.3] , y no[30, 5.3, 20]. Lo mismo ocurre con todos los demás ejemplos de rebanado de listas que se han mencionado anteriormente.

Actualización de listas

Digamos que tienes una lista =[física, química, matemáticas], y quieres cambiar la lista a[biología, química, matemáticas], cambiando efectivamente el miembro en el índice 0. Esto se puede hacer fácilmente asignando ese índice al nuevo miembro que desee.

Es decir,

 lista =[física, química, matemáticas]
    lista[0] = biología
    imprimir(lista)

>

Salida: biología, química, matemáticas]

Esto reemplaza al miembro en el índice 0 (física) con el nuevo valor que desea (química). Esto se puede hacer para cualquier miembro o subconjunto de la lista que desee cambiar.

Para dar otro ejemplo, digamos que tiene una lista llamada números enteros y que contiene los números[2, 5, 9, 20, 27]. Para reemplazar 5 en esa lista por 10, puedes hacerlo con:

enteros =[2, 5, 9, 20, 27]
números enteros[1] = 10
print(enteros)
[2, 10, 9, 20, 27]
>

Para reemplazar el último miembro de la lista de enteros, que es 27, con un número libre como 30.5, usted usaría:

enteros =[2, 5, 9, 20, 27]
números enteros[-1] = 30.5
print(enteros)
[2, 5, 9, 20, 30.5]
>

Eliminación de elementos de la lista

Hay 3 métodos Python para borrar elementos de la lista: list.remove(), list.pop(), y del operador. El método Remove toma el elemento particular a ser eliminado como un argumento mientras que pop y del toman el índice del elemento a ser eliminado como un argumento. Por ejemplo:

list =[3, 5, 7, 8, 9, 20]

Para borrar 3 (el primer elemento) de la lista, puede utilizar:

  • list.remove(3) o
  • list.pop[0], o
  • del list[0]

Para borrar 8, el ítem en el índice 3, de la lista, se puede utilizar:

  • list.remove(8), o
  • list.pop[3]

Añadir elementos de la lista

Para añadir elementos a una lista, se utiliza el método append, que añade el elemento al final de la lista.

Por ejemplo:

 lista_1 =[3, 5, 7, 8, 9, 20]
    lista_1.append(3.33)
    imprimir(lista_1)
    list_1 =[3, 5, 7, 8, 9, 20, 3.33]
    list_1.append("cats")
    imprimir(lista_1)
    list_1 =[3, 5, 7, 8, 9, 20, 3.33, "cats"]

>

Lista de funciones incorporadas (métodos)

La siguiente es una lista de funciones y métodos incorporados con sus descripciones:

  • len(lista): esto da la longitud de la lista como salida. Por ejemplo:

números =[2, 5, 7, 9]
print(len(números))
4
>

  • max(lista): devuelve el elemento de la lista con el valor máximo. Por ejemplo:

números =[2, 5, 7, 9]
print(max(numbers))
9
>

  • min(lista): devuelve el elemento de la lista con el valor mínimo. Por ejemplo:

números =[2, 5, 7, 9]
imprimir(min(números))
2
>

  • list(tuple): convierte un objeto tuple en una lista. Por ejemplo;
animales = (gato, perro, pez, vaca)
imprimir(lista(s) de animales)
[gato, perro, pez, vaca]

>

  • list.append (elemento): añade el elemento a la lista. Por ejemplo;

números =[2, 5, 7, 9]
números.append(15)
imprimir(números)
[2, 5, 7, 9, 15]
>

  • list.pop (index): elimina el elemento en el índice especificado de la lista. Por ejemplo;

números =[2, 5, 7, 9, 15]
números.pop(2)
imprimir(números)
[2, 5, 9, 15]
>

  • list.remove (element):elimina el elemento de la lista Por ejemplo;

valores =[2, 5, 7, 9]
valores.remove(2)
print(valores)
[5, 7, 9]
>

  • list.reverse (): invierte los objetos de la lista. Por ejemplo;

valores =[2, 5, 7, 10]
values.reverse()
print(valores)
[10, 7, 5, 2]
>

  • list.index (elemento): para obtener el valor del índice de un elemento dentro de la lista. Por ejemplo;
animales = [$0027gato$0027, $0027perro$0027, `pez$0027, `vaca$0027, `cabra$0027]
índice_de_pescado = animales.index($0027pescado$0027)
print(índice_de_pescado)
2

>

  • sum (list): para obtener la suma de todos los valores de la lista, si los valores son todos números (enteros o decimales). Por ejemplo;

valores =[2, 5, 10]
suma_de_valores = suma(s) de_valores
print(sum_de_valores)
17
>

Si la lista contiene cualquier elemento que no sea un número, como un string, el método de suma no funcionará. Obtendrías un error al decir: ” TypeError : tipo(s) de operando no soportado(s) para +: $0027int$0027 y $0027str$0027″.

  • list.sort(): para organizar una lista de números enteros, números de coma flotante o cadenas, en orden ascendente o descendente. Por ejemplo:

>

Otro ejemplo:

>

También se puede ordenar una lista de cadenas, ya sea por orden alfabético o por la longitud de las cadenas. Por ejemplo;

# para ordenar la lista por longitud de los elementos
strings = [$0027cat$0027, $0027mammal$0027, $0027goat$0027, $0027is$0027]
sort_by_alphabet = strings.sort()
sort_by_length = strings.sort(key = len)
print(sort_by_alphabet)
print(sort_by_length)
[$0027gato$0027,$0027cabra$0027,$0027es$0027,$0027mamífero$0027]
        [$0027is$0027, $0027cat$0027, $0027goat$0027, $0027mammal$0027]

>

Podemos ordenar la misma lista alfabéticamente usando las$0027cadenas$0027.

Buscar en las listas

El bucle a través de las listas se puede hacer de la misma manera que cualquier otra función de bucle en Python. De esta manera, un método puede ser realizado en múltiples elementos de una lista al mismo tiempo. Por ejemplo:

lista =[10, 20, 30, 40, 50, 60, 70].

Para recorrer todos los elementos de esta lista, y digamos, agregue 10 a cada elemento:

 para elem en la lista:
        elem = elem + 5
        imprimir(elem)
    15
        25
        35
        45
        55
        65
        75

>

Para recorrer los tres primeros elementos de la lista y eliminarlos todos;

Para recorrer el 3er (índice 2) hasta el último elemento de la lista, y añadirlo a una nueva lista llamada new_list:

 lista_nueva = []	
    para elem en la lista[2:]:
        new_list.append(elem)
        print("Nueva lista: {}".format(new_list))
   Salida:
	Nueva lista: [30, 40, 50, 60, 70]

>

De esta manera, cualquier método o función puede ser aplicado a los miembros de una lista para realizar una operación en particular. Puede hacer un bucle a través de todos los miembros de la lista, o bien a través de un subconjunto de la lista mediante el uso de la división de listas.

Comprensión de la lista

Las comprensiones de listas son funciones de Python que se utilizan para crear nuevas secuencias (como listas, diccionarios, etc.) utilizando secuencias que ya han sido creadas. Ayudan a reducir los bucles más largos y hacen que su código sea más fácil de leer y mantener.

Por ejemplo, supongamos que desea crear una lista que contenga los cuadrados de todos los números del 1 al 9:

 lista_de_cuadrados = []
    para int in range(1, 10):
        cuadrado = int ** 2
        list_of_squares.append(square)
    print(list_of_squares)
Lista_de_cuadrados que se usan para el bucle:
    [1, 4, 9, 16, 25, 36, 49, 64, 81]

>

Hacer lo mismo con la comprensión de las listas:

lista_de_cuadrados_2 =[int**2 para int en el rango(1, 10)]].
print($0027Lista de cuadrados usando la comprensión de la lista: formato(lista_de_cuadrados_2)))
Salida utilizando la comprensión de la lista:
[1, 4, 9, 16, 25, 36, 49, 64, 81]
>

Como se ha visto anteriormente, escribir el código usando las comprensiones de listas es mucho más corto que usar el tradicional para los bucles, y también es más rápido. Este es sólo un ejemplo de cómo utilizar las comprensiones de listas en lugar de los bucles, pero esto puede ser replicado y utilizado en muchos lugares donde los bucles también pueden ser utilizados. A veces, ir con un bucle es la mejor opción, especialmente si el código es complejo, pero en muchos casos, la comprensión de la lista hará que su codificación sea más fácil y rápida.

A continuación se muestra una tabla que contiene algunas funciones y métodos de la lista, así como sus descripciones.

Funciones incorporadas

FUNCTION DESCRIPTION Round() Redondea el número pasado como argumento a un número específico de dígitos y devuelve el valor de coma flotante Min() devuelve el elemento mínimo de una lista dada Max() devuelve el elemento máximo de una lista dada len() Devuelve la longitud de la lista Enumerate() Esta función incorporada genera tanto los valores como los índices de los elementos de una lista iterable, así que no necesitamos contar manualmente las pruebas de Filter() si cada elemento de una lista es verdadero o no Lambda Una expresión que puede aparecer en lugares donde un def (para crear funciones) no es sintáctico, Dentro de una lista literal o los argumentos de llamada de una función Map() devuelve una lista de los resultados después de aplicar la función dada a cada ítem de una lista iterable Accumulate() aplica una función particular pasada en su argumento a todos los elementos de la lista devuelve una lista que contiene los resultados intermedios Sum() Devuelve la suma de todos los números de la lista Sum() Devuelve la suma de todos los números de la lista Cmp() Esto se usa para comparar dos listas y devuelve 1 si la primera lista es mayor que la segunda lista. Insertar Insertar elemento para listar en una posición en particular

Listar métodos

FUNCTION DESCRIPTION Append() Añade un nuevo elemento al final de la lista Clear() Elimina todos los elementos de la lista Copy() Devuelve una copia de la lista original Extend() Añade muchos elementos al final de la lista Count() Devuelve el número de ocurrencias de un determinado elemento de una lista Index() Devuelve el índice de un elemento específico de una lista Pop() Elimina un elemento de la lista en un índice específico (eliminar por posición) Elimina() Elimina un elemento específico de la lista (eliminar por valor) Elimina un ítem especificado de la lista (eliminar por valor) Inversa()método de inversión de lugar que invierte el orden de los elementos de la lista

Resumen

  • Una lista es exactamente como suena, un contenedor que contiene diferentes objetos Python, que podrían ser enteros, palabras, valores, etc.
  • Las listas Python pueden ser homogéneas, es decir, pueden contener el mismo tipo de objetos; o heterogéneas, con diferentes tipos de objetos.
  • Para acceder a los valores dentro de las listas, se puede utilizar el índice de los objetos dentro de las listas.
  • La fragmentación de listas es el método para dividir un subconjunto de una lista, y los índices de los objetos de la lista también se utilizan para ello.
  • Existen tres métodos para borrar elementos de la lista: : 1)list.remove(), 2)list.pop(), y 3)del operador
  • El método Append se utiliza para añadir elementos. Esto añade el elemento al final de la lista.
  • El método de bucle del programa Python se puede realizar en múltiples elementos de una lista de datos al mismo tiempo.
  • Las comprensiones de listas son funciones de Python que se utilizan para crear nuevas secuencias (como listas, diccionarios, etc.) utilizando secuencias que ya han sido creadas.