Listas Python: matrizes, métodos e iteração

Aprenda tudo sobre listas Python. Descubra como criar, fatiar, modificar e iterar nativamente arrays em Python.

Experimente no Editor

Visão geral

Em Python, as listas são um dos quatro tipos de dados integrados usados para armazenar coleções de dados. Você pode pensar em uma lista como um array dinâmico que contém uma sequência de itens em uma ordem específica. As listas são incrivelmente versáteis e são amplamente utilizadas em quase todos os scripts Python escritos, desde aplicativos simples de tarefas até pipelines complexos de aprendizado de máquina.

Ao contrário dos arrays em linguagens de tipo estaticamente que impõem tipos de dados uniformes, as listas Python podem ser completamente heterogêneas. Isso significa que uma única lista pode conter confortavelmente uma mistura de números inteiros, flutuantes, strings, objetos e até mesmo outras listas aninhadas. Você declara uma lista colocando seus itens entre colchetes `[]`, separando cada item com uma vírgula.

As listas são ordenadas e indexadas. Os itens dentro de uma lista são mapeados para um índice inteiro começando em `0`. Portanto, o primeiro item é acessado via `my_list[0]`, o segundo via `my_list[1]` e assim por diante. Python também suporta indexação negativa, um recurso exclusivamente poderoso onde `my_list[-1]` recupera o último item, `my_list[-2]` o penúltimo, evitando a necessidade de calcular o comprimento da lista manualmente.

As listas são totalmente mutáveis, o que significa que podem ser modificadas no local após serem criadas. Você pode reatribuir itens específicos por índice ou utilizar métodos integrados. Métodos como `.append()` adicionam um item ao final, `.insert()` injeta um item em um índice específico e `.remove()` ou `.pop()` excluem itens. As listas também apresentam `.sort()` para classificação algorítmica e `.reverse()` para inverter a sequência.

Um recurso poderoso exclusivo das listas Python é o "slicing". O fatiamento permite extrair uma sublista especificando um índice inicial, um índice final e um tamanho de passo, formatado como `my_list[start:stop:step]`. Isso permite que os desenvolvedores peguem pedaços de arrays, copiem arrays ou até mesmo os revertam em uma única linha de código altamente otimizado baseado em C, tornando a manipulação de dados notavelmente expressiva.

Saída de código e execução

Demonstrando inicialização, indexação, modificação e iteração de lista padrão.

fruits = ["apple", "banana", "cherry"]

fruits.append("orange") # Add item
fruits[1] = "mango"     # Change item
fruits.sort()           # Alphabetical sort

print(f"List: {fruits}")
print(f"First fruit: {fruits[0]}")
print(f"Total fruits: {len(fruits)}")
Saída terminal
List: ['apple', 'cherry', 'mango', 'orange']
First fruit: apple
Total fruits: 4

Implementação passo a passo

  • Mantendo coleções ordenadas como uma fila de tarefas
  • Acumulando pontos de dados ao longo do tempo
  • Implementando pilhas e filas

Perguntas frequentes

O que é uma compreensão de lista?

É uma sintaxe mais curta quando você deseja criar uma nova lista com base nos valores de uma lista existente. Exemplo: [x para x em frutas se "a" em x]

Qual é a diferença entre lista e tupla?

As listas são mutáveis (alteráveis), enquanto as tuplas são imutáveis (inalteráveis). Tuplas usam parênteses ().

Tópicos Relacionados

Recursos Python recomendados

Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.