banner python
21/09/2019
Trabalhando com listas em Python
Introdução

Assim como os vetores, as listas são estruturas que armazenam valores e cada um deles é acessado via índice. Em Python, uma lista é uma variável composta que aceita, inclusive, tipos de dados diferentes. E essa é uma grande diferença com relação a outras linguagens de programação. Dessa forma, em Python é possível ter listas como no código a seguir. Algo similar a outras linguagens, é que em Python as listas começam no índice 0 e o último é -1.

num = [1,2,3]
letras = ["a","b","c"]
tudo = [1,"a",3.3,"Casa",10]

Adicionando elemento

Para adicionar um elemento em uma lista, você pode usar algumas funções ou simplesmente o sinal de =. O problema de usar = para adicionar um novo elemento é que o índice deve ser válido, pois caso contrário gerará um erro.

lista = []
lista[0] = 1
print(lista)

#IndexError...

Para evitar isso, o mais indicado é usar as funções append e insert. A função append adiciona o valor passado como parâmetro ao final da lista. Já a função insert recebe a posição e o valor que será inserido como parâmetros. Assim, temos append(valor) e insert(índice, valor).

lista = []
lista.append("item")
lista.insert(0,"coisa")
print(lista)

#['coisa', 'item']

Percebam que o comando append com “item” foi executado primeiro, mas o insert com “coisa” foi pra posição 0, a primeira posição de uma lista.

Alterar, excluir e limpar a lista

Para alterar um elemento, basta informar a posição (o índice do elemento) e o novo valor.

lista = ["a","b"]
print(lista)
lista[1] = "c"
print(lista)

#['a', 'b']
#['a', 'c']

Perceba que o elemento da posição 1 (segunda posição da lista) foi alterado de “b” para “c”.

Para excluir um elemento, não se pode apenas setar o valor para “vazio”, pois o elemento continuará existindo. Em Python, existe a função del, que recebe como parâmetro o objeto que será removido.

lista = ["a","b","c"]
print(lista)
del(lista[1])
print(lista)

#['a', 'b', 'c']
#['a', 'c']

#não é indicado usar apenas lista[1]="" ou lista[1] = 0

Assim, é possível ver que o elemento “b” na segunda posição foi removido da lista, ela teve seus índices reajustados e seu tamanho diminuído.

Outra função que você pode utilizar é a pop. Ela retorna um elemento e o remove da lista. Essa função é útil em casos que se deseje processar/verificar algum dado para só após remove-lo. Caso nenhum parâmetro seja passado na função, ela retornará e removerá o último elemento. Mas se for necessário retornar e remover um elemento específico, basta passar o índice como parâmetro da função.

lista = ["a","b","c",1,2,3]
print(lista)
lista.pop()
print(lista)
lista.pop(2)
print(lista)

#['a', 'b', 'c', 1, 2, 3]
#['a', 'b', 'c', 1, 2]
#['a', 'b', 1, 2]

Notou que primeiro foi removido o elemento 3, que era o último, depois foi removido o elemento “c”, que estava na posição 2 (terceira posição). Ao mesmo tempo, repare que foi utilizada uma lista com tipos diferentes de dados. 😉

Se o seu objetivo for limpar toda a lista, ou seja, excluir todos os elementos dela, basta usar a função clear. Assim como as funções append e insert, ela deve ser utilizada como um método da lista. Veja o código a seguir.

lista = ["a","b","c"]
print(lista)
lista.clear()
print(lista)

#['a', 'b', 'c']
#[]
Outras funções

Existem diversas funções em Python que podem ser utilizadas em listas. É o caso das funções len, max, min, count, reserve e sort.

Max – Retorna o maior elemento;
Min – Retorna o menor elemento;
Count – Conta quantas vezes um elemento aparece;
Reverse – Inverte a ordem da lista;
Sort – Ordena a lista.

lista = [7,4,5,3,1,8,7,2,6,7]
print(max(lista))
print(min(lista))
print(lista.count(7))
lista.reverse()
print(lista)
lista.sort()
print(lista)

#8
#1
#3
#[7, 6, 2, 7, 8, 1, 3, 5, 4, 7]
#[1, 2, 3, 4, 5, 6, 7, 7, 7, 8]

Gostou?
Para mais informações sobre o tema, acesse os links:
https://docs.python.org/3/
https://wiki.python.org.br/AprendaMais
https://www.w3schools.com/python/
https://www.cursoemvideo.com/course/curso-python-3/
http://excript.com/curso-de-python.html

Postagens relacionadas
Como delegar tarefas de forma eficiente? Ver

Em qualquer projeto, não só aqueles que envolvem o desenvolvimento de alguma solução tecnológica, uma das principais questões é como distribuir as tarefas entre os membros da equipe e garantir que o resultado, ao final do processo, seja satisfatório. Delegar tarefas de forma eficaz é uma habilidade que qualquer líder ou gestor que deseja aumentar […]

Trabalhando com Cookies apenas utilizando JavaScript Ver

Trabalhando com Cookies apenas utilizando JavaScript. Exemplo de como salvar e acessar dados armazenados. Link para repositório e página com demonstração de como trabalhar com mudança de tema.

Replit.com: Desenvolva direto no seu navegador Ver

Replit.com: Desenvolva direto no seu navegador