Algunas de las colecciones de datos más usadas en Python son: List, Tuple, Set y Dict. Hoy veremos la colección List, cómo crearla y modificar sus elementos.

Listas en Python

Listas en Python

Una lista en Python sirve para guardar varios elementos en una sola variable. Es una colección ordenada y modificable que permite duplicados. A la hora de declararla podemos utilizar los corchetes “[]” o el constructor list().

cars = ["BMW", "Audi", "Opel"]

numbers = list(('1','5','8','10','15'))

Acceder a una lista en Python

Accedemos a cada uno de los elementos de la lista mediante un índice. El primer elemento tiene el índice 0, el segundo el índice 1, etc.

print(cars[0]) # BMW

Si especificamos un rango de índices obtenemos una sublista.

print(cars[1:3]) # ['Audi', 'Opel']

Para saber si la lista contiene un elemento determinado utilizamos la condición: if “item” in list:

if "Audi" in cars:
    print("cars contains Audi.") # cars contains Audi.

Para obtener el número de elementos que contiene una lista usamos la función len().

cars = ["BMW", "Audi", "Opel"]
print(len(cars)) # 3

Modificar una lista en Python

También podemos cambiar el valor de un elemento haciendo referencia a su índice.

cars = ["BMW", "Audi", "Opel"]
cars[0] = "Volvo"
print(cars) # ['Volvo', 'Audi', 'Opel']

A la hora de añadir un nuevo elemento a la lista tenemos los métodos append() e insert(). El primero lo añade al final de la colección, mientras el segundo permite seleccionar la ubicación.

cars = ["Volvo", "Audi", "Opel"]

cars.append("Ford")
print(cars) # ['Volvo', 'Audi', 'Opel', 'Ford']

cars.insert(1, "Toyota")
print(cars) # ['Volvo', 'Toyota', 'Audi', 'Opel', 'Ford']

Podemos extender una lista con los elementos de otra colección mediante el método extend().

cars = ["Volvo", "Audi", "Opel"]
cars2 = ["Ford", "Toyota"]

cars.extend(cars2)
print(cars) # ['Volvo', 'Audi', 'Opel', 'Ford', 'Toyota']

Eliminar elementos de la lista

Tenemos los métodos pop() y remove(). Ambos permiten eliminar elementos de una lista; pop() acepta como parámetro un índice y remove() acepta un valor.

cars = ["Volvo", "Audi", "Opel", "Ford", "Toyota"]

cars.pop(0)
print(cars) # ['Audi', 'Opel', 'Ford', 'Toyota']

cars.remove("Opel")
print(cars) # ['Audi', 'Ford', 'Toyota']

El método clear() vacía la lista y del la elimina por completo.

cars = ["Volvo", "Audi", "Opel", "Ford", "Toyota"]
cars.clear()
print(cars) # []

del cars
print(cars) # NameError: name 'cars' is not defined

Iterar sobre una lista con el bucle for

Puedes imprimir cada uno de los elementos de una lista mediante un bucle for.

cars = ["Volvo", "Audi", "Opel", "Ford"]
for car in cars:
    print(car) 
 
'''
  Volvo
  Audi
  Opel
  Ford
'''

Copia de listas personalizada

Python ofrece una sintaxis concisa a la hora de copiar elementos de una lista  a otra. En el siguiente ejemplo copiamos a una nueva lista usando una condición, solo los elementos que contengan la vocal “o” (minúscula).

cars = ["Volvo", "Audi", "Opel", "Ford", "Toyota"]

newCars = [c for c in cars if "o" in c]
print(newCars) # ['Volvo', 'Ford', 'Toyota']

Otros métodos de list

Otros de los métodos que proporcionan las listas en Python son;

sort(): ordena los elementos alfanuméricamente.

reverse(): invierte el orden.

count(): retorna el número de veces que un valor aparece en la lista.

index(): devuelve la posición de un valor.

copy(): devuelve una copia de la lista.

cars = ["Volvo", "Audi", "Opel", "Ford", "Toyota", "Audi"]

cars.sort()
print(cars) # ['Audi', 'Audi', 'Ford', 'Opel', 'Toyota', 'Volvo']

cars.reverse()
print(cars) # ['Volvo', 'Toyota', 'Opel', 'Ford', 'Audi', 'Audi']

print(cars.count("Audi")) # 2

print(cars.index("Toyota")) # 1

print(cars.copy()) # ['Volvo', 'Toyota', 'Opel', 'Ford', 'Audi', 'Audi']

Más información: https://docs.python.org

Categorías: Tutorial

0 comentarios

Deja una respuesta

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies