Programación

Todo sobre las listas de Python

Todo sobre las listas de Python

Python tiene muchos tipos de datos como entero, flotante, cadena, lista, tupla, etc. En este tutorial, aprenderemos sobre el tipo de datos de lista. Las listas son uno de los tipos de datos de Python más utilizados y se pueden utilizar para muchas operaciones. 

Para seguir este tutorial, se recomienda tener instalada la última versión de Python en su sistema. Puede seguir nuestra guía sobre la instalación de la última versión de python. La mayor parte del código de este tutorial se puede ejecutar en el shell de Python, pero se recomienda tener un IDE para escribir código Python. Puede consultar nuestra comparación sobre los 10 mejores IDE para escribir código.

Introducción a las listas de Python

Las listas de Python son colecciones de objetos arbitrarios separados por comas y entre corchetes, como las matrices en C ++, javascript y muchos otros lenguajes de programación. Pero la diferencia es que la lista de Python puede contener diferentes tipos de datos en la misma lista. 

Ejemplo:

>>> lista1 = [1, 2, 3, 4]
>>> lista2 = ["hola", "esto", "es", "a", "lista"]
>>> lista3 = ["hola", 100, "veces"]
>>> lista1
[1, 2, 3, 4]
>>> lista2
['hola', 'esto', 'es', 'a', 'lista']
>>> lista3
['hola', 100, 'veces']

Hemos creado tres listas a saber. list1, list2 y list3. La lista1 contiene todos sus elementos del tipo de datos enteros, la lista2 dos contiene todos los elementos del tipo de datos de cadena, mientras que la lista3 contiene los tipos de datos enteros y de cadena.

Las listas de Python están ordenadas

Las listas de Python están ordenadas, lo que significa que debemos observar el orden al crear listas porque el intérprete de Python tratará de manera diferente dos listas con los mismos elementos pero órdenes diferentes.

Ejemplo:

>>> lista1 = [1, 2, 3, 4]
>>> lista2 = [4, 3, 2, 1]
>>> lista3 = [1, 2, 3, 4]
>>> lista1 == lista2
Falso
>>> lista1 == lista3
Cierto

Podemos ver en el código que list1 y list2, que contienen los mismos elementos en diferentes órdenes, no son iguales para Python como lo verifica el operador == (igual).

Acceder a los elementos de las listas

Podemos acceder a los elementos presentes en una lista de muchas formas.

Indexación

Podemos usar la indexación para acceder a un elemento de una lista. En Python, la indexación comienza en 0, por lo que se puede acceder al primer elemento dando el índice 0. Podemos dar el índice en la lista de Python dando el número de índice entre corchetes [] al final del nombre de la variable de la lista. 

Ejemplo:

>>> lista1 = ["hola", "esto", "es", "a", "lista"]
>>> lista1 [0]
'Hola'
>>> lista1 [2]
'es'
>>> lista1 [4]
'lista'

La indexación de Python comienza en 0, así que dé el índice como 0 para acceder al primer elemento, 1 para acceder al segundo elemento.

Para acceder al elemento dando el número de índice de un elemento que no está presente, Python generará un error de índice.

>>> list1 [5] Rastreo (última llamada más reciente):
Archivo "", línea 1, en
IndexError: índice de lista fuera de rango
>>>

En el código, he dado el número de índice 5 a la lista list1, que está fuera de rango ya que list1 contiene solo cinco elementos con un número de índice de 0 a 4, por lo que obtenemos un error de índice.

Indexación negativa

Python también tiene soporte para indexación negativa. Esto significa que tenemos un número negativo como índice. Usándolo, podemos acceder a los elementos de la última vez que lo usamos. El índice -1 significa el último elemento. El número de índice -2 significa el penúltimo elemento, y así sucesivamente. 

Ejemplo:

>>> lista1 = ["hola", "esto", "es", "a", "lista"]
>>> lista1 [-1]
'lista'
>>> lista1 [-2]
'a'
>>> lista1 [-4]
'esto'
>>> lista1 [-5]
'Hola'

En el código, es muy fácil acceder a los elementos de la lista desde el último. Esto es útil para listas largas en las que no sabemos la cantidad de elementos.

Rebanar

Al usar la indexación, podemos acceder a un solo elemento simultáneamente, pero a veces necesitamos una parte de la lista o una lista secundaria. Esto se puede hacer usando el operador de corte. Necesitamos pasar dos números de índice en el corchete separados por un punto y coma para hacer el corte. El primer número de índice es el primer elemento de la lista secundaria y el segundo número de índice es el último elemento de la lista secundaria a la que queremos acceder. 

Ejemplo:

# creando las listas
lista1 = [101, 200, 113, 194, 999]
imprimir (lista1 [0: 3])
imprimir (lista1 [1:])
imprimir (lista1 [1: 4])
imprimir (lista1 [:])

Producción:

rebanar cuerdas

Cambiar valores de listas

Podemos cambiar fácilmente los valores de una lista mediante la indexación, que aprendimos en los temas anteriores.

Por ejemplo: suponga que hemos creado una lista con los siguientes datos.

>>> año = [2016, 2017, 2018, 2019, 2021]
>>> año
[2016, 2017, 2018, 2019, 2021]

Queremos cambiar el año 2021 a 2020; podemos hacer esto usando el siguiente código. Usamos la indexación y el operador de asignación para cambiar el valor del elemento con el número de índice 4, i.mi., el quinto elemento.

>>> año [4] = 2020
>>> año
[2016, 2017, 2018, 2019, 2020]

Desde el código, el valor cambió de 2021 a 2020 de la variable de lista denominada año.

Agregar elementos en listas

Podemos agregar elementos a una lista de muchas maneras. Algunas de las técnicas populares se analizan a continuación.

Usando el método append ()

La función append () es una función incorporada de Python, que puede agregar un elemento al final de la lista. También podemos pasar una lista a una lista usando la función append (). 

Ejemplo:

# creó una lista de frutas
frutas = ["manzana", "mango", "plátano"]
imprimir (frutas)
# agregando kiwi a las frutas
frutas.añadir ("kiwi")
imprimir (frutas)
# agregando uvas a las frutas
frutas.append ("uvas")
imprimir (frutas)

Producción:

función append ()

Podemos ver que los valores se han agregado a la lista, pero solo podemos agregar un elemento a la lista usando este método. Para agregar varios elementos al final de la lista, necesitamos usar el ampliar función.

Usando el método extend ()

Este método es similar al método append (); la única diferencia es que podemos agregar varios elementos a la vez en la lista usando este método. 

Ejemplo:

# creó una lista de frutas
frutas = ["manzana", "mango", "plátano"]
imprimir (frutas)
# agregando kiwi y uvas a la vez a las frutas
frutas.extender (["uvas", "kiwi"])
imprimir (frutas)

Producción:

función extender ()

Podemos ver en la salida que ambos elementos se han agregado a la lista simultáneamente usando el método extend ().

Usando el método insert ()

Las dos funciones mencionadas anteriormente agregan los elementos al final de la lista. A veces necesitamos agregar un elemento en una posición específica. Esto se puede hacer usando la función insert (). Acepta dos argumentos, uno es la posición y el otro es el valor que queremos insertar.

Ejemplo:

# creó una lista de frutas
frutas = ["manzana", "mango", "plátano"]
imprimir (frutas)
# agregando uvas en la tercera posición de las frutas
frutas.insertar (2, "uvas")
imprimir (frutas)
# agregando uvas en la quinta posición de las frutas
frutas.insertar (4, "kiwi")
imprimir (frutas)

Producción:

función de inserción

Operaciones de listas básicas

Podemos realizar una amplia gama de operaciones en las listas de Python. Algunas de las operaciones básicas útiles se muestran a continuación.

Unirse a listas

Hay muchas formas en las que podemos concatenar o unir listas. La forma más sencilla es utilizar el operador +. 

Ejemplo:

# creando las dos listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
list2 = ['Este', 'es', 'el', 'segundo', 'lista']
# uniendo las dos listas
lista3 = lista1 + lista2
imprimir (lista3)

Producción:

fusionando dos cuerdas

También podemos agregar dos listas usando el método extend () que discutimos anteriormente. Necesitamos pasar el segundo ist como argumento para extender el método () del objeto list1, y las dos listas se fusionarán. 

Ejemplo:

# creando las dos listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
list2 = ['Este', 'es', 'el', 'segundo', 'lista']
# uniendo las dos listas usando el método extend ()
list1.extender (lista2)
imprimir (lista1)

Producción:

fusionando dos cadenas usando la función extend ()

Recorrer una lista

La por bucle discutido en el tutorial, todo lo que necesita saber sobre el bucle for se puede utilizar para recorrer la lista. Recorrer una lista puede ser útil para acceder a los datos individuales de una lista. 

Ejemplo:

# creando las listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
# recorriendo la lista
para el elemento en list1:
imprimir (artículo)

Producción:

iterando una lista

Comprueba si existe un artículo

También podemos verificar si existe un elemento en una lista en Python. Para hacerlo, necesitamos usar el "en" palabra clave de python. 

Ejemplo:

>>> frutas = ["manzana", "mango", "plátano"]
>>> "mango" en frutas
Cierto
>>> "kiwi" en frutas
Falso
>>> "manzana" en frutas
Cierto
>>> "plátano" no en frutas
Falso

Usamos el en palabra clave para identificar fácilmente si un elemento está presente en la lista o no. También hemos utilizado la palabra clave not con la palabra clave in para comprobar si un elemento no está presente en la lista.

Longitud de listas

Necesitamos calcular la longitud de la lista para encontrar el número de elementos contenidos en la lista. Veremos dos métodos. El método más fácil es usar la función len () incorporada de Python. 

Ejemplo:

# creando las listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
# calcular la longitud de la lista
longitud = len (lista1)
print ("La longitud de la lista es:", longitud)

Producción:

longitud de la lista usando la función len ()

También podemos usar Python por bucle para calcular la longitud de una lista. Para calcular la longitud de una lista usando el bucle for, ejecute el siguiente código.

# creando las listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
longitud = 0
# calcular la longitud de la lista
para los elementos de list1:
longitud = longitud + 1
print ("La longitud de la lista es:", longitud)

Producción:

longitud de la lista usando for loop

Eliminar elementos de la lista

Podemos eliminar un elemento de una lista usando dos métodos, yo.mi., usando el método remove () y pop ().

El método pop () acepta el número de índice del elemento que queremos eliminar de la lista. 

Ejemplo:

# creando las listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
# eliminando el segundo elemento de la lista
list1.eliminar ("es")
imprimir (lista1)

Salida: eliminaremos "es" de la lista. 

eliminar usando la función remove ()

Las funciones remove () también funcionan de la misma manera, pero necesitamos darle al elemento un argumento para la función remove en lugar del número de índice.

Ejemplo:

# creando las listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
# eliminando el elemento pasando el número de índice
list1.pop (2)
imprimir (lista1)

Salida: este programa eliminará el elemento con el número de índice 2 de la lista. 

eliminar usando la función pop ()

Métodos integrados en listas

Hay muchos métodos integrados en Python que se pueden usar mientras se manipulan listas. Algunas de las funciones que discutimos incluyen insert (), append (), pop (), remove (), len (), etc. Aquí hay algunos más.

claro()

El método clear () de la lista de Python se usa para borrar la lista, yo.mi., eliminando todos los elementos de la lista. 

Ejemplo:

>>> list1 = [1, 2, 3, 4] # creó la lista
>>> lista1
[1, 2, 3, 4]
>>> lista1.clear () # La lista ahora estará vacía
>>> lista1
[]

Copiar()

El método copy () se usa para generar una copia de una lista. 

Ejemplo:

# creando las listas
list1 = ['Este', 'es', 'el', 'primero', 'lista']
lista2 = lista1.Copiar()
imprimir (lista2)

Salida: hemos copiado list1 en list2 usando la función copy (). 

copiar () función de la lista

contar()

La función count () del objeto de lista se usa para contar la ocurrencia de un elemento en el argumento.

Ejemplo:
# creando las listas
list1 = ['manzana', 'uvas', 'mango', 'manzana', 'manzana']
# contando el número de apariciones de manzana
count = list1.contar ('manzana')
print ("El número de ocurrencias del elemento es:", cuenta)

Salida: Obtendremos el número de apariciones del elemento manzana en la lista. 

count () método de lista

índice()

La función index () se usa para obtener el índice del primer elemento coincidente como argumento de la función.

Ejemplo:

# creando las listas
list1 = ['manzana', 'uvas', 'mango', 'manzana']
# contando el número de apariciones de la manzana
índice = lista1.índice ('manzana')
print ("El primer índice del elemento es:", índice)

Producción:

index () método de lista

contrarrestar()

El método reverse () se usa para invertir el orden de una lista. 

Ejemplo:

# creando las listas
lista1 = [1, 2, 3, 4]
# invirtiendo la lista
list1.contrarrestar()
imprimir (lista1)

Producción:

método reverse () de listas

clasificar()

La función sort () se utiliza para ordenar los elementos de una lista. 

Ejemplo:

# creando las listas
lista1 = [101, 200, 113, 194, 999]
# ordenar la lista
list1.clasificar()
imprimir (lista1)

Producción:

ordenar una lista

max ()

Las funciones max () devolverán el máximo de la lista dada. 

Ejemplo:

# creando las listas
lista1 = [101, 200, 113, 194, 999]
# el máximo de la lista
máximo = máximo (lista1)
print ("El primer índice del artículo es:", máximo)

Producción:

encontrar el máximo de lista

min ()

La función min () es similar a la función max (), pero en lugar de devolver el valor máximo, devolverá el mínimo.

Conclusión

En este tutorial, hemos aprendido todos los conceptos necesarios de las listas de Python. También te puede interesar ver el tutorial completo sobre cadenas en python.

SuperTuxKart para Linux
SuperTuxKart es un gran título diseñado para ofrecerte la experiencia Mario Kart de forma gratuita en tu sistema Linux. Es bastante desafiante y diver...
Tutorial de Battle for Wesnoth
The Battle for Wesnoth es uno de los juegos de estrategia de código abierto más populares que puedes jugar en este momento. Este juego no solo ha esta...
0 A.D. Tutorial
De los muchos juegos de estrategia que existen, 0 A.D. logra destacarse como un título completo y un juego táctico muy profundo a pesar de ser de códi...