Comprensión de lista de Python, agregar, ordenar, longitud [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. Se representa entre corchetes (y este es uno de los atributos que la diferencia de las tuplas, que se separan entre paréntesis). También es mutable, es decir, se puede modificar o actualizar; a diferencia de las tuplas, que son inmutables.
En este tutorial de Python, aprenderá:
- ¿Qué es una lista de Python?
- Ejemplos de listas de Python:
- Acceso a valores dentro de listas
- Rebanado de lista de Python
- Actualización de listas
- Eliminar elementos de la lista
- Adjuntar elementos de lista
- Lista de funciones integradas (métodos)
- Recorrer listas
- Comprensiones de listas de Python
Ejemplos de listas de Python:
Las listas de Python pueden ser homogéneas, lo que significa que pueden contener el mismo tipo de objetos; o heterogénea, incluyendo diferentes tipos de objetos.
Ejemplos de listas homogéneas 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 listas heterogéneas incluyen:
[2, 'cat', 34.33, 'Travis'] [2.22, 33, 'pen']
Acceso a valores dentro de listas
Para acceder a los valores dentro de las listas, se puede usar 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
y así. 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 usando el índice -1. Por ejemplo,
list[-1] = 20
Rebanado 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 usan 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 en el límite superior, y esto significa que el último índice durante el corte de la lista generalmente se ignora. Por eso
list[2:-1] = [30, 5.3]
, y no [30, 5.3, 20]. Lo mismo ocurre con todos los demás ejemplos de segmentación de listas que se dieron anteriormente.
Actualización de listas
Supongamos 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 desea.
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 enteros y que contiene los números [2, 5, 9, 20, 27]. Para reemplazar 5 en esa lista con 10, puede 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 enteros, que es 27, con un número libre como 30,5, usaría:
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 lista:list.remove(), list.pop() y del operator. 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:
- list.remove(3) o
- lista.pop[0], o
- lista del[0]
Para eliminar 8, el elemento en el índice 3, de la lista, puede usar:
- list.remove(8), o
- lista.pop[3]
Adjuntar elementos de lista
Para agregar elementos a una lista, se usa el método append, y esto 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"]
Lista de funciones integradas (métodos)
La siguiente es una lista de funciones y métodos integrados con sus descripciones:
- len(lista): esto da la longitud de la lista como salida. Por ejemplo:
numbers = [2, 5, 7, 9] print(len(numbers)) >>> 4
- max(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]
- listar.agregar (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]
- listar.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 de í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á. Obtendrá un error que dice:"TypeError :tipos de operandos no admitidos para +:'int' y 'str'"
- list.sort():para organizar una lista de 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.
Recorrer 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 se puede realizar 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, y 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 tres primeros elementos de la lista y eliminarlos todos;
for elem in list[:3]: list.remove(elem) >>>list = [40, 50, 60, 70]
Para recorrer el 3 rd (índice 2) al último elemento de la lista y agréguelos 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 en particular. Puede recorrer todos los miembros de la lista o recorrer un subconjunto de la lista utilizando la segmentación de lista.
Lista de comprensiones de Python
Las comprensiones de lista 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 los cuadrados 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 de 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 los tradicionales bucles for, 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, optar por un bucle for es la mejor opción, especialmente si el código es complejo, 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 |
---|---|
Redondo() | Redondea el número pasado como argumento a un número específico de dígitos y devuelve el valor de coma flotante |
Mínimo() | devuelve el elemento mínimo de una lista dada |
Máx.() | devuelve el elemento máximo de una lista dada |
largo() | Devuelve la longitud de la lista |
Enumerar() | Esta función integrada genera tanto los valores como los índices de los elementos en un iterable, por lo que no necesitamos contar manualmente |
Filtro() | 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 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 dado |
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 lista. |
Insertar | Insertar elemento a la lista en una posición particular |
Métodos de lista
FUNCIÓN | DESCRIPCIÓN |
---|---|
Agregar() | Agrega un nuevo elemento al final de la lista |
Borrar() | Elimina todos los elementos de la lista |
Copiar() | Devuelve una copia de la lista original |
Extender() | Agregue muchos elementos al final de la lista |
Cuenta() | Devuelve el número de ocurrencias de un elemento en particular en una lista |
Índice() | Devuelve el índice de un elemento específico de una lista |
Pop() | Elimina elementos de la lista en un índice particular (eliminar por posición) |
Eliminar() | Elimina el elemento especificado de la lista (eliminar por valor) |
Reversa() | 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.
- Las listas de Python pueden ser homogéneas, lo que significa que pueden contener el mismo tipo de objetos; o heterogénea, que contiene diferentes tipos de objetos.
- Para acceder a los valores dentro de las listas, se puede usar el índice de los objetos dentro de las listas.
- La segmentació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 lista son:1)list.remove(), 2)list.pop() y 3)del operator
- El método Append se usa 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.
python
- Tipos de datos de Python
- Operadores de Python
- Declaración de paso de Python
- Argumentos de la función de Python
- Diccionario de Python
- Iteradores de Python
- Cierres Python
- Fecha y hora de Python
- Promedio de Python:cómo encontrar el PROMEDIO de una lista en Python
- Python List count () con EJEMPLOS
- Python elimina duplicados de una lista