Em Python, as listas são um tipo de estrutura de dados que permite armazenar uma coleção de itens em uma única variável. As listas são mutáveis, o que significa que podem ser modificadas após serem criadas.
Essa característica traz grande poder em sua utilização, sendo que podemos criar uma lista vazia, que em determinados momentos receberá a adição de um ou mais itens, e em outros poderemos excluir estes mesmos itens, realizando muitas manipulações nesses dados.
Criando listas na prática
As listas são representadas por colchetes envolvendo uma relação de itens separados por vírgulas. Cada item em uma lista pode ser de qualquer tipo de dados, incluindo até mesmo outra lista. Por exemplo:
minha_lista = [1, 2, 3]
Desta forma a variável ‘minha_lista‘ criada acima é do tipo ‘list’, pois os valores estão entre colchetes no momento de sua criação. Essa lista conterá 3 valores numéricos que são o número 1, o número 2 e o número 3. Observe abaixo o resultado de uma lista executada no Jupyter Notebook:
Podemos criar uma nova variável com o nome de ‘minha_outra_lista’ que também será uma lista, também conterá 3 valores, porém não serão valores numéricos, e sim strings pois foram passados entre aspas na criação:
minha_outra_lista = ['a', 'b', 'c']
E que tal uma lista de listas?
minha_lista_de_listas = [minha_lista, minha_outra_lista]
Novamente estamos criando uma lista pois estamos utilizando os colchetes na criação, então a variável ‘minha_lista_de_lista‘ é do tipo ‘list’. E quantos itens você acha que existem nessa lista? Essa pode ser uma pergunta traiçoeira, porém a resposta é muito simples: 2 itens.
Podemos verificar esta afirmação perguntando o comprimento da lista, usando o comando len():
Como podemos conferir na imagem acima, utilizando a função ‘len‘ (retorna o número de itens de um objeto), temos como resposta que a última variável criada possui 2 itens.
Estes 2 itens são as duas listas que já havíamos criado, e, portanto, os 2 itens da lista em questão também são do tipo ‘list‘.
Acessando itens em uma lista
Você pode acessar qualquer item de uma lista pelo seu índice, que é a posição do item na lista, começando com zero (no python os índices começam por 0), sendo que indicamos o valor do índice entre colchetes após a lista em questão. Por exemplo:
minha_lista = [1, 2, 3] print(minha_lista[0]) print(minha_lista[1]) print(minha_lista[2])
Você também pode usar índices negativos para acessar itens do final da lista, sendo que o valor -1 se refere ao último item, o valor -2 ao penúltimo e assim por diante:
minha_lista = [1, 2, 3] print(minha_lista[-1]) print(minha_lista[-2]) print(minha_lista[-3])
Para retornar partes específicas da lista, podemos indicar uma combinação de índices, separados por dois pontos, sendo que se não indicarmos um indíce antes dos dois pontos a seleção começará a partir do primeiro item (é como se fosse um zero. Por exemplo, [:2] é o mesmo que [0:2]), e não indicando um índice após os dois pontos a seleção irá até o final da lista:
minha_lista = [1, 2, 3] print(minha_lista[1:]) print(minha_lista[:-1]) print(minha_lista[0:2])
Podemos ainda observar nesse caso que o item final de nossa seleção não é o item do último índice.
Por exemplo, quando indicamos minha_lista[:-1], o índice -1 se refere ao último valor da lista, que em nosso exemplo é o número 3, porém a resposta não contém esse valor. Ou seja, o índice indicado após os dois pontos não será incluído na seleção, e sim o item no índice anterior a ele.
Em outras palavras, sempre que indicamos um elemento de parada, o Python entende que este elemento de parada não deve ser incluído.
Conforme percebemos nesses exemplos básicos, listas são estruturas de dados versáteis em Python que permitem armazenar e manipular dados de várias maneiras diferentes.
Comandos básicos de listas em Python
Vamos conferir algumas ações básicas que podemos realizar com as listas, e seus respectivos códigos:
- Inserir um item em uma determinada posição:
# minha_lista.insert('índice da posição onde iremos inserir', 'item a ser inserido') minha_lista = [1, 2, 3] minha_lista.insert(1, 6)
O resultado da operação acima seria a lista [1, 6, 2, 3]
- Anexar um item no final da lista:
# minha_lista.append('item a ser inserido') minha_lista = [1, 2, 3] minha_lista.append(6)
A lista resultante seria [1, 2, 3, 6]
- Ordenar uma lista:
# minha_lista.sort() – ordenar em ordem crescente # minha_lista.reverse() – ordenar em ordem decrescente minha_lista = [2, 1, 3] minha_lista.sort()
[1, 2, 3] minha_lista.reverse()
[3, 2, 1]
- Remover um item da lista:
# minha_lista.remove('item a ser removido') minha_lista = [1, 2, 3] minha_lista.remove(2)
[1, 3]
- Encontrar o índice de um item. Neste caso, a busca por um elemento retorna o índice deste elemento:
# minha_lista.index('item') minha_lista = [1, 2, 3] minha_lista.index(2)
1
- Encontrar o valor mínimo e máximo na lista:
# min(minha_lista) # max(minha_lista) minha_lista = [1, 2, 3] min(minha_lista)
1 max(minha_lista)
3
- Contar o número de ocorrências de um item na lista:
# minha_lista.count('item') minha_lista = [1, 2, 3, 3] minha_lista.count(3)
2
- Concatenar listas:
# nova_lista = lista 1 + lista 2 + lista 3 ... minha_lista = [1, 2, 3] outra_lista = ['a', 'b', 'c'] nova_lista = minha_lista + outra_lista
[1, 2, 3, 'a', 'b', 'c']
- Percorrer uma lista:
# for item in lista: # print(item) minha_lista = [1, 2, 3] for i in minha_lista: print(i) >>> 1 >>> 2 >>> 3
Como aprender mais sobre Python
Conforme vimos, trabalhar com Listas no Python é muito simples! Felizmente essa simplicidade na linguagem Python não é uma exclusividade das Listas.
Em nosso Programador com Python – Completo para inciantes abordamos todas as áreas básicas de Python, evoluindo também para aplicações mais específicas e avançadas, como Análisde de Dados e Machine Learning, Desenvolvimento de Aplicativos Mobile, Automação WEB e de Tarefas, dentre outras.
Clique no link do curso acima e confira em detalhes o conteúdo que foi organizado com muito cuidado, focando no aprendizado do aluno, com muita didática, exercícios práticos e aplicações reais!
E temos também opções gratuitas:
- Curso de Python básico
- Curso de Python para machine learning
- Curso Power BI básico com Machine Learning
Confira também alguns artigos relacionados:
- A linguagem Python
- Aula de Python para iniciantes
- O pacote Numpy – Python para Machine Learning
- O pacote Pandas – Python para Machine Learning
- A biblioteca scikit-learn – Python para Machine Learning
- Seu primeiro código de Machine Learning com Python
- Como acelerar o processamento da sua CPU para Machine Learning com Python
- Editando html com Python