Listas
Listas
Listas são objetos para armazenar uma sequência de coisas (objetos).
Até então, uma variável era relacionada a um número (ou cadeia de caracteres), mas algumas vezes temos coleções de números, por exemplo, graus $ -20, -15, -10, -5, 0, \ldots, 40 $.
Solução simples: uma variável para cada valor:
C1 = -20
C2 = -15
C3 = -10
...
C13 = 40
Solução muito tediosa para muitos valores!
Melhor: um conjunto de valores podem ser colecionados em uma lista:
C = [-20, -15, -10, -5, 0, 5, 10, 15, 20, 25, 30, 35, 40]
Agora temos apenas uma variável, C, armazenando todos os valores.
Operações em listas
Inicialização e indexação
Inicialize com os colchetes e vírgulas entre os objetos Python:
L1 = [-91, 'a string', 7.2, 0]
Os elementos são acessados via um índice:
L1[3]
(índice = 3).
Os índices de listas iniciam em 0: 0, 1, 2, ... len(L1) - 1
.
>>> lista = [4, 6, -3.5]
>>> print lista[0]
4
>>> print lista[1]
6
>>> print lista[2]
-3.5
>>> len(lista) ## comprimento da lista
3
Anexar, estender, inserir, excluir
Através dos comandos append
, extend
, insert
, delete
, podemos anexar um elemento a mais ao final da lista, extender a lista com outra lista, inserir um novo elemento em determinada posição e apagar um elemento, respectivamente.
>>> C = [-10, -5, 0, 5, 10, 15, 20, 25, 30]
>>> C.append(35) ## adiciona um novo elemento 35 ao final
>>> C
[-10, -5, 0, 5, 10, 15, 20, 25, 30, 35]
>>> C = C + [40, 45] ## extende C no final
>>> C
[-10, -5, 0, 5, 10, 15, 20, 25, 30, 35, 40, 45]
>>> C.insert(0, -15) ## insere -15 como índice 0
>>> C
[-15, -10, -5, 0, 5, 10, 15, 20, 25, 30, 35, 40, 45]
>>> del C[2] ## apaga o 3o elemento
>>> C
[-15, -10, 0, 5, 10, 15, 20, 25, 30, 35, 40, 45]
>>> del C[2] ## apaga o que é agora o 3o elemento
>>> C
[-15, -10, 5, 10, 15, 20, 25, 30, 35, 40, 45]
>>> len(C) ## comprimento da lista
11
Busca por elementos, índices negativos
Podemos buscar um elemento em uma lista utilizando a classe .index()
da lista, descobrir se um elemento está na lista com condicionais e buscar o último elemento com índices negativos.
>>> C.index(10) ## índice do primeiro elemento com valor 10
3
>>> 10 in C ## 10 é um elemento de C?
True
>>> C[-1] ## o último elemento da lista
45
>>> C[-2] ## o penúltimo elemento da lista
40
>>> umalista = ['book.tex', 'book.log', 'book.pdf']
>>> texfile, logfile, pdf = algumalist ## atribuição dos valores direto à variáveis
>>> texfile
'book.tex'
>>> logfile
'book.log'
>>> pdf
'book.pdf'