Python3 Listas
Las secuencias son la estructura de datos más básica en Python.
Cada valor en una secuencia tiene un valor de posición correspondiente, llamado índice. El primer índice es 0, el segundo es 1, y así sucesivamente.
Python tiene 6 tipos integrados de secuencias, pero los más comunes son listas y tuplas.
Las operaciones que se pueden realizar en listas incluyen indexación, segmentación, suma, multiplicación y verificación de membresía.
Además, Python ya tiene métodos integrados para determinar la longitud de una secuencia y para determinar los elementos máximo y mínimo.
La lista es el tipo de datos más utilizado en Python; puede aparecer como valores separados por comas entre corchetes.
Los elementos de datos de una lista no necesitan ser del mismo tipo.
Para crear una lista, solo tienes que encerrar entre corchetes los diferentes elementos de datos separados por comas. Como se muestra a continuación:
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
list4 = ['red', 'green', 'blue', 'yellow', 'white', 'black']
Acceder a los valores de una lista
Igual que la indexación de cadenas, la indexación de listas comienza0en 0, el segundo índice es11, y así sucesivamente.
Mediante la indexación, las listas pueden realizar operaciones como segmentación, combinación, etc.

Ejemplo
list = ['red', 'green', 'blue', 'yellow', 'white', 'black']
print( list[0] )
print( list[1] )
print( list[2] )
El resultado del ejemplo anterior es:
red green blue
La indexación también puede comenzar desde el final; el índice del último elemento es-1-1, un lugar hacia adelante es-2-2, y así sucesivamente.

Ejemplo
list = ['red', 'green', 'blue', 'yellow', 'white', 'black']
print( list[-1] )
print( list[-2] )
print( list[-3] )
El resultado del ejemplo anterior es:
black white yellow
Usa índices para acceder a los valores de la lista; también puedes usar corchetes[]para segmentar caracteres, como se muestra a continuación:

Ejemplo
nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(nums[0:4])
El resultado del ejemplo anterior es:
[10, 20, 30, 40]
Segmentar usando valores de índice negativos:
Ejemplo
list = ['Google', 'Ejemplo', "Zhihu", "Taobao", "Wiki"]
# Lee el segundo elemento
print ("list[1]: ", list[1])
# Segmenta desde el segundo elemento (incluido) hasta el penúltimo (no incluido)
print ("list[1:-2]: ", list[1:-2])
El resultado del ejemplo anterior es:
list[1]: Ejemplo list[1:-2]: ['Ejemplo', 'Zhihu']
Actualizar listas
Puedes modificar o actualizar los elementos de una lista; también puedes usar el método append() para añadir elementos a la lista, como se muestra a continuación:
Ejemplo (Python 3.0+)
list = ['Google', 'Ejemplo', 1997, 2000]
print ("El tercer elemento es : ", list[2])
list[2] = 2001
print ("El tercer elemento actualizado es : ", list[2])
list1 = ['Google', 'Ejemplo', 'Taobao']
list1.append('Baidu')
print ("La lista actualizada : ", list1)
Nota:Discutiremos en los próximos capítulosappend()el uso del método.
El resultado del ejemplo anterior es:
第三个元素为 : 1997 更新后的第三个元素为 : 2001 更新后的列表 : ['Google', 'Ejemplo', 'Taobao', 'Baidu']
Eliminar elementos de una lista
Puedes usar la sentencia del para eliminar elementos de una lista, como en el siguiente ejemplo:
Ejemplo (Python 3.0+)
list = ['Google', 'Ejemplo', 1997, 2000]
print ("Lista original : ", list)
del list[2]
print ("Eliminar el tercer elemento : ", list)
El resultado del ejemplo anterior es:
原始列表 : ['Google', 'Ejemplo', 1997, 2000] 删除第三个元素 : ['Google', 'Ejemplo', 2000]
Nota:Discutiremos el uso del método remove() en los próximos capítulos.
Operadores de script de listas de Python
Los operadores + y * en listas son similares a los de cadenas. El signo + se usa para combinar listas, el signo * para repetir listas.
Como se muestra a continuación:
| Expresión de Python | Resultado | Descripción |
|---|---|---|
| len([1, 2, 3]) | 3 | Longitud |
| [1, 2, 3] + [4, 5, 6] | [1, 2, 3, 4, 5, 6] | Combinación |
| ['Hi!'] * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | Repetición |
| 3 in [1, 2, 3] | True | Si el elemento existe en la lista |
| for x in [1, 2, 3]: print(x, end=" ") | 1 2 3 | Iteración |
Segmentación y concatenación de listas de Python
La segmentación de listas de Python es similar a la operación de cadenas, como se muestra a continuación:
Operación:
| Expresión de Python | Resultado | Descripción |
|---|---|---|
| L[2] | 'Taobao' | Lee el tercer elemento |
| L[-2] | 'Ejemplo' | Lee el penúltimo elemento comenzando desde la derecha: count from the right |
| L[1:] | ['Ejemplo', 'Taobao'] | Muestra todos los elementos a partir del segundo elemento |
>>> L[2]
'Taobao'
>>> L[-2]
'Ejemplo'
>>> L[1:]
['Ejemplo', 'Taobao']
>>>
Las listas también admiten operaciones de concatenación:
>>> squares += [36, 49, 64, 81, 100]
>>> squares
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>>
Listas anidadas
Usar listas anidadas es crear otras listas dentro de una lista, por ejemplo:
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'
Comparación de listas
La comparación de listas requiere importaroperatordel móduloeqel método (ver detalles:módulo operator de Python):
Ejemplo
import operator
a = [1, 2]
b = [2, 3]
c = [2, 3]
print("operator.eq(a,b): ", operator.eq(a,b))
print("operator.eq(c,b): ", operator.eq(c,b))
El resultado del código anterior es:
operator.eq(a,b): False operator.eq(c,b): True
Funciones y métodos de listas de Python
Python incluye las siguientes funciones:
| N.º | Función |
|---|---|
| 1 | len(list) Número de elementos de la lista |
| 2 | max(list) Devuelve el valor máximo de los elementos de la lista |
| 3 | min(list) Devuelve el valor mínimo de los elementos de la lista |
| 4 | list(seq) Convierte una tupla en una lista |
Python incluye los siguientes métodos:
| N.º | Método |
|---|---|
| 1 | list.append(obj) Añade un nuevo objeto al final de la lista |
| 2 | list.count(obj) Cuenta el número de veces que aparece un elemento en la lista |
| 3 | list.extend(seq) Añade de una vez varios valores de otra secuencia al final de la lista (extiende la lista original con una nueva lista) |
| 4 | list.index(obj) Encuentra la posición del índice de la primera coincidencia de un valor en la lista |
| 5 | list.insert(index, obj) Inserta un objeto en la lista |
| 6 | list.pop([index=-1]) Elimina un elemento de la lista (por defecto el último) y devuelve el valor de ese elemento |
| 7 | list.remove(obj) Elimina la primera coincidencia de un valor en la lista |
| 8 | list.reverse() Invierte los elementos de la lista |
| 9 | list.sort( key=None, reverse=False) Ordena la lista original |
| 10 | list.clear() Vacía la lista |
| 11 | list.copy() Copia la lista |