Tamanho de fonte
Alto contraste
Altura de linha

Como concatenar duas listas em Python

Avatar de Ana Maria Gomes Ana Maria Gomes
3 minutos de leitura 8 meses atrás

Ao trabalhar com listas em Python, uma tarefa comum com a qual você pode se deparar é a necessidade de combinar ou concatenar duas listas em uma só. Essa é uma operação fundamental na programação em Python, e existem várias maneiras de alcançá-la. Neste artigo, exploraremos os métodos mais diretos para concatenar duas listas, garantindo que você possa aplicar essas técnicas em seus próprios projetos em Python.

Usando o operador + para Concatenar Listas

A maneira mais simples de concatenar duas listas em Python é usando o operador +. Esse operador permite que você combine as listas de ponta a ponta, criando uma nova lista que inclui todos os elementos de ambas as listas na ordem em que aparecem.

Aqui está um exemplo básico:

lista_um = [1, 2, 3]
lista_dois = [4, 5, 6]

lista_combinada = lista_um + lista_dois
print(lista_combinada)
Testar

Saída:

[1, 2, 3, 4, 5, 6]

Este método cria uma nova lista com uma cópia superficial dos itens de ambas lista_um e lista_dois. Se você precisar de cópias profundas das listas (cópias dos objetos dentro das listas, não apenas das referências), você deve usar a função copy.deepcopy().

Desempacotando Listas com o operador *

Para aqueles que usam Python 3.5 ou posterior, há um método alternativo que utiliza o operador de desempacotamento *. Este método não é apenas conciso, mas também versátil, pois pode ser usado com qualquer iterável, não apenas listas.

Veja como você pode usá-lo:

lista_um = [1, 2, 3]
lista_dois = [4, 5, 6]
lista_combinada = [*lista_um, *lista_dois]
print(lista_combinada)
Testar

Saída:

[1, 2, 3, 4, 5, 6]

Essa abordagem é particularmente útil quando você quer concatenar diferentes tipos de iteráveis, como listas, tuplas e intervalos. Por exemplo:

minha_lista = [1, 2, 3]
minha_tupla = (4, 5)
meu_intervalo = range(6, 8)
lista_combinada = [*minha_lista, *minha_tupla, *meu_intervalo]
print(lista_combinada)
Testar

Saída:

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

Encadeando Iteráveis com itertools.chain()

Se você está procurando iterar sobre múltiplas listas sem realmente criar uma nova lista, você pode usar a função itertools.chain(). Esta é uma maneira eficiente em termos de memória para processar elementos de múltiplos iteráveis sequencialmente.

Aqui está um exemplo de como usar itertools.chain():

import itertools

lista_um = [1, 2, 3]
lista_dois = [4, 5, 6]

for item in itertools.chain(lista_um, lista_dois):
    print(item)
Testar

Isso irá imprimir cada item de ambas lista_um e lista_dois sem criar uma nova lista.

Resumo

Concatenar duas listas em Python pode ser feito de várias maneiras. O operador + é o método mais direto para combinar listas. Para mais flexibilidade e legibilidade, especialmente com Python 3.5 ou superior, você pode usar o operador de desempacotamento *. Por último, para cenários onde você não precisa de uma nova lista, mas quer iterar sobre múltiplos iteráveis, itertools.chain() é uma excelente escolha. Cada um desses métodos cria uma cópia superficial dos elementos das listas originais, então esteja atento a isso ao trabalhar com estruturas de dados mais complexas.

Imagem de um notebook

Cursos de programação gratuitos com certificado

Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:

  • Conteúdos gratuitos
  • Projetos práticos
  • Certificados
  • +20 mil alunos e comunidade exclusiva
  • Materiais didáticos e download de código
Inicie agora

Comentários

Comentar
Faça parte da discussão Crie sua conta gratuita e compartilhe
sua opinião nos comentários
Entre para a Asimov