Como criar e manipular Listas no Python [Guia Prático]

Você certamente já ouviu falar sobre listas Python, certo? Ao criar lista em Python, você pode utilizá-la em seus códigos. Esse é um recurso inicial e muito útil para a programação.

Lista no Python é uma sequência de itens guardada em uma variável, criada com colchetes e valores separados por vírgula: lista_compras = ['banana', 'laranja', 'maçã']. Cada item tem uma posição que começa em 0, então lista_compras[1] devolve 'laranja'. Índices negativos contam de trás para frente, e [-1] é sempre o último item.

Vamos te mostrar alguns métodos para que você possa buscar elemento em lista Python, adicionar item lista Python, substituir valor lista Python, entre outras ações dentro da sua lista.

Para tanto, nós vamos utilizar o Jupyter (Pacote Anaconda). Está preparado para a aula? Vamos nessa, e não deixe de conferir nosso vídeo a seguir!

O que você aprende neste vídeo

Resposta rápida: Lista em Python é uma sequência de itens guardada numa variável, escrita entre colchetes e separada por vírgulas. Cada item tem uma posição que começa em zero, e índice negativo conta de trás para frente. Para mexer nela, append e insert incluem itens, e del, remove e pop tiram.

Neste vídeo (36 min):

  • 1:00 - apresenta a lista como itens entre colchetes guardados numa variável
  • 3:50 - acessa o item pela posição, que começa a contar do zero
  • 5:50 - usa índice negativo para pegar o último item da lista
  • 6:50 - acrescenta item no fim da lista com append
  • 7:50 - insere no meio com insert, que empurra os demais itens
  • 10:00 - apaga pela posição com del e pelo valor com remove
  • 13:40 - retira o item com pop e guarda o valor numa variável
  • 17:00 - monta uma lista de tarefas alimentada pelo input
  • 19:20 - repete a pergunta num while até a resposta vir vazia
  • 22:00 - recorta um trecho da lista indicando início e fim
  • 26:00 - ordena com sort e vê o par entre duas listas se perder
  • 29:00 - junta loja e faturamento numa tupla para manter a relação

Trechos do vídeo:

  • A contagem de posições começa em zero, então o primeiro item da lista é a posição zero.
  • O insert não sobrescreve o valor: ele entra na posição e desloca o resto para frente.
  • Duas listas separadas não têm vínculo, e ordenar uma delas desfaz a correspondência entre elas.
  • O pop tira o item da lista e ainda devolve esse valor para uma variável.

O que é uma lista em Python

Antes de te mostrar como utilizar uma lista em Python, vamos começar com o que é uma lista?

Nada mais é do que uma lista comum, é isso mesmo, uma lista comum!

Quando você faz uma lista de compras, por exemplo, isso é uma lista, e no Python é a mesma coisa!

Vamos poder listar todas as informações dentro de uma única variável e depois utilizar essas informações dentro do nosso código.

Para criar listas no Python é necessário:

  • Utilizar o símbolo [] (colchetes) para as listas;

  • Armazenar a lista em uma VARIÁVEL;

  • Separa itens da lista pela vírgula;

Acessando os dados de uma lista

Aqui vamos começar com um exemplo bem simples de lista, onde estamos atribuindo 3 itens a variável lista_compras.

Codigo
lista_compras = ['banana','laranja','maçã']
print(lista_compras)
['banana', 'laranja', 'maçã']

Cada item da lista possui uma posição. Por padrão, as posições não iniciam do 1 (um) e sim do 0 (ZERO). Nos códigos seguintes temos as formas de acessar uma informação da lista.

Para acessarmos um item da lista vamos utilizar a estrutura: nomedalista[posição].

Buscando a posição [1]:

Codigo
print(lista_compras[1])
laranja

Buscando a posição [0]:

Codigo
print(lista_compras[0])
banana

Se tentarmos buscar a posição [3] teremos um erro. Isso ocorre porque não existe uma posição 3. Apenas as posições [0], [1], [2]:

Codigo
print(lista_compras[3])
erro ao buscar item em uma lista

Outro ponto interessante é que conseguimos utilizar as posições negativas dentro da lista para buscar os dados na ordem inversa!

O uso de números negativos permite acessar a lista na ordem inversa:

Codigo
print(lista_compras[-1])
maçã
Codigo
[banana , laranja , maçã]
[  0    ,   1     ,  2  ] -> Posições números positivos
[  -3   ,  -2     , -1  ] -> Posições números negativos

Métodos do Python para utilizar nas listas

Agora vamos analisar alguns métodos do Python como: append e insert (para inserir informações na lista); del, pop e remove (para remover itens da lista).

Para adicionar um item a lista:

  • .append(): adiciona o item ao final da lista;
  • .insert(): insere um item na lista na posição indicada

Para deletar um item da lista:

  • del: remove um item da lista baseado na posição indicada;
  • .remove(): remove um item baseado no seu valor e não na sua posição;
  • .pop(): remove da lista_compras o último item, mas não o exclui.

No exemplo abaixo tentamos incluir o item ‘carro’ a nossa lista_compras com o .append():

Codigo
lista_compras.append('carro')
print(lista_compras)
['banana', 'laranja', 'maçã', 'carro']

Utilizando del para remover item com base na posição indicada:

Codigo
del lista_compras[3]
print(lista_compras)
['banana', 'laranja', 'maçã']

Já no código abaixo, adicionamos ‘carro’ à lista na posição indicada, com .insert():

Codigo
lista_compras.insert(1,'carro')
print(lista_compras)
['banana', ' carro', 'laranja', 'maçã']

Removendo um item com base no seu valor e não na sua posição, com o .remove() (ATENÇÃO! retira apenas a primeira ocorrência e não todas):

Codigo
lista_compras.append('carro')
print(lista_compras)
['banana', 'carro', 'laranja', 'maçã', 'carro']

lista_compras.remove('carro')
print(lista_compras)
['banana', 'laranja', 'maçã', 'carro']

É comum que as listas se iniciem sem nenhum valor. Como se fosse um papel em branco que gradualmente você adiciona informações.

Para criarmos vamos usar novamente o colchetes, mas sem nenhum item:

Codigo
lista_sonhos = []

Utilizando .pop(), iremos remover o último item da lista_compras, mas sem excluí-lo. Nesse caso, o valor carro será armazenado na variável item:

Codigo
item = lista_compras.pop(-1)
print(item)
carro

Após retirar da lista_compras, adicionamos ‘carro’ na nossa lista_sonhos:

Codigo
lista_sonhos.append(item)
print(lista_sonhos)
['carro']
Ícone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

Como criar uma lista do zero no Python?

Podemos também criar uma lista do zero e trazer itens de outras listas para dentro dele com a utilização do pop que vai pegar essa informação e armazenar em outra variável.

Outra opção para criar uma lista é utilizar a função input para que o próprio usuário possa inserir as informações de forma manual através de uma caixa!

Codigo
# Criando a lista tarefas
tarefas = []

# Usando o Input() vamos coletar do usuário qual a tarefa a ser adicionada.

atividade = input('Insira uma atividade: ')

#Adiciona a tarefa indicada pelo usuário a lista de tarefas

tarefas.append(atividade)
Insira uma atividade: Curtir o video de listas da Hashtag

print(tarefas)
['Curtir o video de listas da Hashtag']

Inserindo vários itens na lista

Outra forma de criar uma lista é utilizando o while + input, então até que a informação da caixa de entrada seja vazia o programa irá armazenar as informações em uma lista.

Codigo
while atividade:
   atividade = input('Insira uma atividade: ')
   tarefas.append(atividade)
Insira uma atividade: Me inscrever no canal da Hashtag
Insira uma atividade: Fazer o download do minicurso de Python
Insira uma atividade: Compartilhar o vídeo da Hashtag
Insira uma atividade

A estrutura abaixo indica que pegará os itens da posição [0] até o penúltimo item da lista [-2]:

Codigo
print(tarefas[:-2])
['Curtir o video de listas da Hashtag', 'Me inscrever no canal da Hashtag', 'Fazer o download do minicurso de Python']

Já no exemplo a seguir temos a utilização da estrutura FOR para percorrer todos os elementos e fazer o print de cada um deles.

Codigo
for tarefa in tarefas:
   print(tarefa)
Curtir o video de listas da Hashtag
Me inscrever no canal da Hashtag
Fazer o download do minicurso de Python
Compartilhar o vídeo da Hashtag

Criando uma lista com valores numéricos

Até agora todas nossas listas foram compostas por textos, mas é possível ter listas com valores numéricos.

Ou seja, você não fica preso a textos: a mesma lista pode guardar números. Só é preciso atenção ao que cada operação faz, como mostra o exemplo a seguir.

Pois, nesse exemplo temos duas listas em uma determinada ordem e ao utilizar o sort para ordenar elas, essa sequência é desfeita, então a ordem inicial foi modificada.

Então se você estava pegando cada nome e relacionando ao número pela posição isso não poderá mais ser feito. No exemplo abaixo temos 3 lojas e seu volume em vendas.

Codigo
lojas = ['Rio de Janeiro','São Paulo', 'Curitiba']
vendas = [10000, 20000, 50000]

O .sort() ordena em ordem crescente, do menor para o maior (e, em listas de texto, em ordem alfabética). Atenção: as duas listas não estão conectadas.

Codigo
lojas.sort()
vendas.sort()

Perceba que ao mudarmos a ordem, não temos mais a Rio de Janeiro -> 10000 / São Paulo -> 20000 / Curitiba -> 50000:

Codigo
print(lojas)
print(vendas)
['Curitiba', 'Rio de Janeiro', 'São Paulo']
[10000, 20000, 50000]

Unindo listas no Python

Para unir duas listas podemos simplesmente utilizar o símbolo de +:

Codigo
print(lojas+vendas)
['Curitiba', 'Rio de Janeiro', 'São Paulo', 10000, 20000, 50000]

Não é o que queremos. Vamos tentar inverter a ordem:

Codigo
print(vendas+lojas)
[10000, 20000, 50000, 'Curitiba', 'Rio de Janeiro', 'São Paulo']

Ainda não é o que queremos. Neste caso unir as listas com o símbolo de + não atende a nossa necessidade, pois queremos relacionar o nome ao valor!

Já estamos quase finalizando, agora vamos a uma parte importante: utilizar um Tupla para unir listas e conseguir relacionar o nome ao valor.

Unindo listas com tupla

A tupla é um objeto parecido com a lista. Em vez dos colchetes [], usamos os parênteses () para criar uma tupla.

No exemplo, precisamos relacionar o nome ao valor, e com a Tupla será possível fazer a união das listas dessa forma.

Utilizando o for para passar por todos os elementos como vimos anteriormente vamos conseguir esse resultado, mas veja, que precisamos colocar o elemento i primeira lista e o elemento i da segunda lista.

Dessa forma temos uma tupla que nada mais é do que do que um objeto que nos permite armazenar várias informações associadas.

Neste caso estamos armazenando a loja com a sua respectiva venda para que essas informações fiquem sempre vinculadas.

Veja o código com o processo descrito acima:

Codigo
lojas = ['Rio de Janeiro','São Paulo', 'Curitiba']
vendas = [10000,20000,50000]
resultados=[]

Usando range para rodar o for. i é uma variável auxiliar que irá percorrer a posição 0, 1 e 2 da nossas listas. Range(3) indica serem 3 iterações:

Codigo
for i in range(3):
   tupla=(lojas[i],vendas[i])
   resultados.append(tupla)
print(resultados)
[('Rio de Janeiro', 10000), ('São Paulo', 20000), ('Curitiba', 50000) ]

Para finalizar vamos te mostrar como acessar um item dentro dessa tupla, pois temos um argumento a mais do que temos na lista.

O primeiro é a posição do conjunto e depois será a posição no conjunto, então nesse exemplo temos resultados [1][0].

Isso significa que vamos pegar o conjunto na posição 1 que é referente a São Paulo e 20000. Em seguida pegamos a posição 0 desse conjunto, que corresponde ao nome São Paulo.

Ou seja, primeiro informamos o conjunto que vamos analisar e em seguida qual elemento queremos desse conjunto!

Codigo
print(resultados[1][0])
São Paulo

Ao fazermos resultados[1][0] acessamos o primeiro item da tupla, ou seja: São Paulo,

Resumo dos principais operadores de lista

Para que você não se perca em meio a tanta informação, resumimos aqui os principais operadores de listas Python.

Acessar os dados de uma lista (operador [])

A expressão dentro dos colchetes é o índice. Lembre-se de que o índice do primeiro elemento é 0. Na nossa lista de compras:

Codigo
print(lista_compras[1])
laranja

Concatenar listas no Python (operador +)

O + junta as duas listas na ordem em que você escreveu, sem reordenar nada:

Codigo
print([2, 4, 6] + [3, 5])
[2, 4, 6, 3, 5]

Multiplicação (operador *)

Esse operador repete (replica) uma lista diversas vezes. Se multiplicarmos nossa lista_compras por 3, teremos:

Codigo
print(lista_compras * 3)
['banana', 'laranja', 'maçã', 'banana', 'laranja', 'maçã', 'banana', 'laranja', 'maçã']

Descobrir o tamanho da lista (função len())

A função len() retorna a quantidade de elementos existentes. Na nossa lista_compras, teríamos:

Codigo
print(len(lista_compras))
3

Verificar se um item está na lista (operador in)

Esse operador percorre todos os itens e devolve True quando encontra o valor e False quando não encontra. Veja:

Codigo
lista_compras = ['banana', 'laranja', 'maçã']

print('banana' in lista_compras)
True

print('mamão' in lista_compras)
False

Menor valor, maior valor e soma (min(), max() e sum())

Com essas três funções você encontra o menor valor, o maior valor e a soma de todos os elementos de uma lista numérica:

Codigo
numeros = [1, 3, 5, 7, 9]

print(min(numeros))
# Resultado: 1

print(max(numeros))
# Resultado: 9

print(sum(numeros))
# Resultado: 25

Veja outros métodos de listas Python importantes

Até o momento, você viu como funciona a função append python, além de insert, del, pop e remove. Mas há outros métodos relevantes para você saber nas listas Python, veja:

  • extend: serve para prolongar a lista, pois adiciona no fim todos os elementos do argumento iterable passado como parâmetro.
  • index: devolve o índice base-zero do primeiro item cujo valor é igual a x. Se o valor não existir, o retorno será ValueError.
  • count: retorna o número de vezes em que um elemento aparece na lista.
  • sort: ordena os itens na lista.
  • reverse: inverte a ordem dos elementos na lista.
  • copy: devolve uma cópia rasa da lista. 
  • clear: remove todos os itens da lista. 

Como você viu, dá para fazer muitas operações com listas no Python usando diferentes métodos. Para usá-los com propriedade, o próximo passo é praticar com bases e projetos reais.

Conheça nosso curso completo de Python

Se você quer entrar de vez no universo Python, a capacitação é fundamental para se destacar. A Hashtag Treinamentos tem um curso completo de Python para te preparar para o mercado de trabalho.

Nele, você começa do zero, entendendo a importância e as aplicações do Python, instala o programa, importa bases de dados e faz o tratamento delas. 

Na medida em que for seguindo no curso, aprenderá a fazer análise de dados, cálculo de indicadores com as ferramentas, e até criar e-mail para ser enviado automaticamente pelo Python.

Tudo isso apoiado com material didático completo com livro digital, suporte diário da nossa equipe de experts, e, claro, exemplos, exercícios e aplicações do mercado de trabalho. Afinal, nosso foco é elevar seu nível de conhecimento para o topo.

Em resumo, com o curso completo de Python da Hashtag Treinamentos você sai do zero ao nível impressionador!

E o melhor de tudo: ao optar por cursos online de programação como este, você tem a flexibilidade de aprender no seu próprio ritmo, sem sair de casa, e ainda se prepara para o mercado de trabalho com habilidades práticas e altamente valorizadas.

Conclusão

Conhecer como funcionam as listas Python pode facilitar sua vida no trabalho. São diversos métodos e operações possíveis, como adicionar ou remover itens dessa lista, concatenar e multiplicar.

Esse é um assunto muito importante, porque pode elevar sua produtividade. A partir do momento em que você domina esse assunto, suas programações nos próximos códigos que for desenvolver serão muito mais fáceis!

Perguntas frequentes sobre listas no Python

1. Qual a diferença entre lista e tupla no Python?

A lista é criada com colchetes e pode ser alterada depois: dá para adicionar, remover e trocar itens. A tupla é criada com parênteses e não muda depois de criada, o que a torna útil para manter dados associados, como o nome de uma loja e o valor de venda dela.

2. Como saber quantos itens tem uma lista no Python?

Use a função len(): len(lista_compras) devolve a quantidade de elementos. Como a contagem de posições começa em 0, o índice do último item é sempre len(lista) - 1.

3. Qual a diferença entre append e insert no Python?

O .append() sempre coloca o novo item no fim da lista. O .insert() recebe a posição e o valor, então lista.insert(1, 'carro') coloca o item na posição 1 e empurra os demais para a frente.

4. Como remover um item de uma lista no Python?

Você tem três caminhos: del lista[3] remove pela posição, lista.remove('carro') remove pelo valor (apenas a primeira ocorrência) e lista.pop() remove o último item e devolve esse valor, que você pode guardar em outra variável.

Se você ainda está engatinhando no Python, nossa melhor dica é começar com um minicurso gratuito!