Comprensión, adición, clasificación y longitud de listas de Python [EJEMPLOS]

¿Qué es una lista de Python?

Una lista es exactamente lo que parece, un contenedor que contiene diferentes objetos de Python, que pueden ser números enteros, palabras, valores, etc. Es el equivalente a una matriz en otros lenguajes de programación. Está representado por un cuadrado. brackets (y este es uno de los atributos que lo diferencia de las tuplas, que están separadas por paréntesis). También es mutable, es decir, puede modificarse o actualizarse; a diferencia de las tuplas, que son inmutables.

Ejemplos de listas de Python:

Las listas de Python pueden ser homogéneasneonosotros, es decir que pueden contener el mismo tipo de objetos; o heterogéneoneonosotros, incluyendo diferentes tipos de objetos.

Ejemplos de homogéneoneoLas listas de Estados Unidos incluyen:

list of integers =  [1, 2, 3, 8, 33]
list of animals = ['dog', 'cat', 'goat']
list of names = ['John', 'Travis', 'Sheila']
list of floating numbers = [2.2, 4.5, 9.8, 10.4]

Ejemplos de heterogéneoneoLas listas de Estados Unidos incluyen:

[2, 'cat', 34.33, 'Travis']
[2.22, 33, 'pen']

Acceder a valores dentro de listas

Para acceder a valores dentro de 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:

list = [3, 22, 30, 5.3, 20]
  • 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.

etcétera. Para acceder a cada uno de los valores de la lista, usaría:

list[0] to access 3
list[1] to access 22
list[2] to access 30
list[3] to access 5.3
list[4] to access 20

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

list[-1] = 20

Corte de lista de Python

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

list[:] = [3, 22, 30, 5.3, 20] (all the members of the list];
list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3);
list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4)
list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).

Las listas de Python son exclusivas de límite superior, y esto significa que el último índice durante la división de la lista generalmente se ignora. Es por eso que

list[2:-1] = [30, 5.3]

, y no [30, 5.3, 20]. Lo mismo ocurre con todos los demás ejemplos de división de listas dados anteriormente.

Actualizando listas

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

Es decir,

list = [physics, chemistry, mathematics]
    list[0] = biology
    print(list)

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

Esto reemplaza el 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:

integers = [2, 5, 9, 20, 27]
           integers[1] = 10
           print(integers)

>>> [2, 10, 9, 20, 27]

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

integers = [2, 5, 9, 20, 27]
           integers[-1] = 30.5
           print(integers)

>>> [2, 5, 9, 20, 30.5]

Eliminar elementos de la lista

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

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

Para eliminar 3 (el primer elemento) de la lista, puede usar:

  • lista.remove(3) o
  • lista.pop[0], o
  • eliminar lista[0]

Para eliminar 8, el elemento en el índice 3, de la lista, puede usar:

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

Agregar elementos de lista

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

Por ejemplo:

list_1 = [3, 5, 7, 8, 9, 20]
    list_1.append(3.33)
    print(list_1)

    >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33]

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

Listar funciones integradas (métodos)

El following es una lista de funciones y métodos integrados con sus descripciones:

  • len(lista): esto proporciona la longitud de la lista como salida. Por ejemplo:
numbers = [2, 5, 7, 9]
print(len(numbers))
>>> 4
  • máx(lista): devuelve el elemento de la lista con el valor máximo. Por ejemplo:
numbers = [2, 5, 7, 9]
print(max(numbers))
>>> 9
  • min(lista): devuelve el elemento de la lista con el valor mínimo. Por ejemplo:
numbers = [2, 5, 7, 9]
print(min(numbers))
>>> 2
  • lista (tupla): convierte un objeto tupla en una lista. Por ejemplo;
animals = (cat, dog, fish, cow)
print(list(animals))
>>> [cat, dog, fish, cow]
  • lista.añadir(elemento): agrega el elemento a la lista. Por ejemplo;
numbers = [2, 5, 7, 9]
numbers.append(15)
print(numbers)
>>> [2, 5, 7, 9, 15]
  • lista.pop(índice): elimina el elemento en el índice especificado de la lista. Por ejemplo;
numbers = [2, 5, 7, 9, 15]
numbers.pop(2)
print(numbers)
>>> [2, 5, 9, 15]
  • lista.eliminar(elemento): elimina el elemento de la lista. Por ejemplo;
values = [2, 5, 7, 9]
values.remove(2)
print(values)
>>> [5, 7, 9]
  • lista.reversa(): invierte los objetos de la lista. Por ejemplo;
values = [2, 5, 7, 10]
values.reverse()
print(values)
>>> [10, 7, 5, 2]
  • lista.índice(elemento): para obtener el valor del índice de un elemento dentro de la lista. Por ejemplo;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']
fish_index = animals.index('fish')
print(fish_index)
>>> 2
  • suma(lista): para obtener la suma de todos los valores de la lista, si los valores son todos números (enteros o decimales). Por ejemplo;
values = [2, 5, 10]
sum_of_values = sum(values)
print(sum_of_values)

>>> 17

Si la lista contiene algún elemento que no sea un número, como una cadena, el método de suma no funcionará. Recibirá un error que dice: “Error de tecleado: tipos de operandos no admitidos para +: 'int' y 'str'”

  • list.sort(): para organizar una lista de números enteros, números de punto flotante o cadenas, en orden ascendente o descendente. Por ejemplo:
values = [1, 7, 9, 3, 5]
# To sort the values in ascending order:
values.sort()
print(values)

>>> [1, 3, 5, 7, 9]

Otro ejemplo:

values = [2, 10, 7, 14, 50]
# To sort the values in descending order:
values.sort(reverse = True)
print(values)

>>> [50, 14, 10, 7, 2]

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

# to sort the list by length of the elements
strings = ['cat', 'mammal', 'goat', 'is']
sort_by_alphabet = strings.sort()
sort_by_length = strings.sort(key = len)
print(sort_by_alphabet)
print(sort_by_length)

>>> ['cat', 'goat', 'is', 'mammal']
        ['is', 'cat', 'goat', 'mammal']

Podemos ordenar la misma lista alfabéticamente usando 'cadenas'.

Recorriendo listas

El recorrido por listas se puede realizar de la misma manera que cualquier otra función de bucle en Python. De esta forma, se puede realizar un método en varios 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, digamos, agregue 10 a cada elemento:

for elem in list:
        elem = elem + 5
        print(elem)
    
    >>>>15
        25
        35
        45
        55
        65
        75

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

for elem in list[:3]:
    list.remove(elem)

    >>>list = [40, 50, 60, 70]

Para recorrer los 3rd (índice 2) al último elemento de la lista y agréguelo a una nueva lista llamada new_list:

new_list = []	
    for elem in list[2:]:
        new_list.append(elem)
        print(“New List: {}”.format(new_list))
    
   Output:
	New List: [30, 40, 50, 60, 70]

De esta manera, se puede aplicar cualquier método o función a los miembros de una lista para realizar una operación particular. Puede recorrer todos los miembros de la lista o recorrer un subconjunto de la lista utilizando la división de listas.

Lista de comprensiones Python

Las listas por comprensión son funciones de Python que se utilizan para crear nuevas secuencias (como listas, diccionarios, etc.) utilizando secuencias que ya se han creado. 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; digamos que desea crear una lista que contenga el squares de todos los números del 1 al 9:

list_of squares = []
    for int in range(1, 10):
        square = int ** 2
        list_of_squares.append(square)

    print(list_of_squares)

List_of_squares using for loop:

    [1, 4, 9, 16, 25, 36, 49, 64, 81]

Para hacer lo mismo con las listas por comprensión:

list_of_squares_2 = [int**2 for int in range(1, 10)]

    print('List of squares using list comprehension: {}'.format(list_of_squares_2))

Output using list comprehension:

    [1, 4, 9, 16, 25, 36, 49, 64, 81]

Como se vio anteriormente, escribir el código usando listas por comprensión es mucho más corto que usar bucles for tradicionales, y también es más rápido. Este es solo un ejemplo del uso de listas por comprensión en lugar de bucles for, pero esto se puede replicar y usar en muchos lugares donde también se pueden usar bucles for. A veces, utilizar un bucle for es la mejor opción, especialmente si el código es com.plex, pero en muchos casos, la comprensión de listas hará que la 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 lista, y sus descripciones.

Funciones integradas

FUNCIÓN DESCRIPCIÓN
Ronda() Redondea el número pasado como argumento a un número específico de dígitos y devuelve el valor de coma flotante
min() devolver el elemento mínimo de una lista dada
Max () devolver el elemento máximo de una lista dada
len () Devuelve la longitud de la lista.
Enumerar() Esta función incorporada genera tanto los valores como los índices de los elementos en un iterable, por lo que no necesitamos contarlos manualmente.
Filtrar() prueba si cada elemento de una lista es verdadero o no
lambda Una expresión que puede aparecer en lugares donde una definición (para crear funciones) no es sintáctica, dentro de una lista literal o en los argumentos de llamada de una función.
Mapa() devuelve una lista de los resultados después de aplicar la función dada a cada elemento de un iterable determinado
Acumular() aplicar una función particular pasada en su argumento a todos los elementos de la lista devuelve una lista que contiene los resultados intermedios
Suma () 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.
recuadro Insertar elemento para listar en una posición particular

Métodos de lista

FUNCIÓN DESCRIPCIÓN
Anexar () Agrega un nuevo elemento al final de la lista.
Claro() Elimina todos los elementos de la lista.
Copiar () Devuelve una copia de la lista original.
Ampliar() Agregue muchos elementos al final de la lista.
Contar () Devuelve el número de apariciones de un elemento particular en una lista
Índice() Devuelve el índice de un elemento específico de una lista.
Música pop() Elimina un elemento de la lista en un índice particular (eliminar por posición)
Eliminar() Elimina el elemento especificado de la lista (eliminar por valor)
Contrarrestar() Método de inversión in situ que invierte el orden de los elementos de la lista.

Resumen

  • Una lista es exactamente lo que parece, un contenedor que contiene diferentes objetos de Python, que pueden ser números enteros, palabras, valores, etc.
  • Python las listas pueden ser homogéneasneonosotros, significa que pueden contener el mismo tipo de objetos; o heterogéneoneonosotros, que contienen diferentes tipos de objetos.
  • Para acceder a valores dentro de listas, se puede utilizar el índice de los objetos dentro de las listas.
  • La división de listas es el método de dividir un subconjunto de una lista, y los índices de los objetos de la lista también se utilizan para esto.
  • Tres métodos para eliminar elementos de la lista son: 1)list.remove(), 2)list.pop() y 3)operador del
  • El método agregar se utiliza para agregar elementos. Esto agrega el elemento al final de la lista.
  • El método de bucle del programa Python se puede realizar en varios elementos de una lista de datos al mismo tiempo.
  • Las listas por comprensión son funciones de Python que se utilizan para crear nuevas secuencias (como listas, diccionarios, etc.) utilizando secuencias que ya se han creado.