Una lista puede contener cualquier tipo de elementos, incluso listas dentro de otras listas.
Vamos a poner un ejemplo de una lista que contenga varios tipos distintos de elementos:
- un entero
- un string
- un float
- un boleano
- una lista
1
|
lista1 = [2, "texto", 55.7, False, [2, 4, 6]]
|
El constructor es una función que nos va a permitir construir una lista. En este caso, pasamos una tupla ()
1
2
3
4
|
lista2 = list((2, 4, 6, 8))
print(lista2)
C:>python lists.py
[2, 4, 6, 8]
|
range()
Esta función nos permite generar una lista mediante un rango de datos. En este ejemplo, una lista con elementos de 1 a 10
Hay que tener en cuenta que el rango final no es incluido en la lista
1
2
3
4
|
lista = list(range(1,10))
print(lista)
C:>python lists.py
[1, 2, 3, 4, 5, 6, 7, 8, 9]
|
igual que con los strings, podemos ver el elemento en la posición que nos interesa. Teniendo que en cuenta que se inicia el index en 0
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
print(lista[2])
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
tres
|
in
Para saber si un elemento existe dentro de una lista:
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
print('dos' in lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
True
|
En las listas, los elementos se puede cambiar y modificar.
1
2
3
4
5
6
7
8
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
lista[2] = 'cambiado'
print(lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
['uno', 'dos', 'cambiado', 'cuatro']
|
métodos
Al igual que vimos previamente con los string, podemos ver los métodos que podemos aplicar a las listas:
1
2
|
dir(list)
['add', 'class', 'contains', 'delattr', 'delitem', 'dir', 'doc', 'eq', 'format', 'ge', 'getattribute', 'getitem', 'gt', 'hash', 'iadd', 'imul', 'init', 'init_subclass', 'iter', 'le', 'len', 'lt', 'mul', 'ne', 'new', 'reduce', 'reduce_ex', 'repr', 'reversed', 'rmul', 'setattr', 'setitem', 'sizeof', 'str', 'subclasshook', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
|
.len
vemos el numero de elementos de la lista:
1
2
3
4
5
6
|
lista = list(range(1,10))
print(lista)
print(len(lista))
C:>python lists.py
[1, 2, 3, 4, 5, 6, 7, 8, 9]
9
|
.append
añade un elemento al final de la lista
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
lista.append('nuevo')
print(lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
['uno', 'dos', 'tres', 'cuatro', 'nuevo']
|
.extend
Añade varios elementos al final de la lista. Se le pasan dichos elementos dentro de una lista [] o de una tupla ().
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
lista.extend(['nuevo','otro'])
print(lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
['uno', 'dos', 'tres', 'cuatro', 'nuevo', 'otro']
|
.insert
Inserta un nuevo elemento en la posición de indice que le indiquemos.
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
lista.insert(1,'DOS')
print(lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
['uno', 'DOS', 'dos', 'tres', 'cuatro']
|
.pop
Elimina un elemento del final de la lista. Si se le pasa un número de indice, elmina el elemento en esa posición.
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
lista.pop()
print(lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
['uno', 'dos', 'tres']
|
.remove
Elimina un elemento indicado de la lista
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
lista.remove('dos')
print(lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
['uno', 'tres', 'cuatro']
|
.clear
Borra todos los elementos de la lista, dejándola limpia
.sort
Ordena los elementos de la lista
1
2
3
4
5
6
7
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
lista.sort()
print(lista)
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
['cuatro', 'dos', 'tres', 'uno']
|
Se puede utilizar la propiedad reserse para ordenar los elementos al revés:
1
|
lista.sort(reverse=True)
|
.count
Cuenta los elementos que hay en la lista.
1
2
3
4
5
6
|
lista = ["uno", "dos", "tres", "cuatro"]
print(lista)
print(lista.count('tres'))
C:>python lists.py
['uno', 'dos', 'tres', 'cuatro']
1
|