2
respostas

Função append

Não entendi exatamente como funciona a função append. Tinha entendido que ela acrescentava um valor a minha lista criada. Mas pelo visto não é exatamente isso. Alguém poderia me explicar exatamente a função de append, porque mesmo olhando a documentação ainda fiquei na dúvida.

Valeu!

2 respostas

Olá Igor, Tudo bem?

Então o método append adiciona um elemento ao fim de uma lista, por exemplo:

marcas_de_carro = ["VW", "Fiat"]
marcas_de_carro.append("Renault")
print(marcas_de_carro)

irá exibir: ["VW", "Fiat", "Renault"]

Caso você adicione outra lista ela será tratada como um único objeto ao fim da lista atual, exemplo:

aves = ["Pombo", "Gaivota"]
aves_exotica = ["Avestruz", "Águia Careca"]
aves.append(aves_exotica)
print(aves)

deve exibir ["Pombo", "Gaivota", ["Avestruz", "Águia Careca"]]

É importante notar que o tamanho da lista sempre aumenta em um quando você usa .append()

Você pode usar este método em conjunto com loops, por exemplo:

Arquivo CSV (Nome Idade)

Rafael;28
Joao;18
Maria;24
Carla;20
Alison;34

Programa

maiores_de_25 = list()
arquivo = open("arquivo.csv")
conteudo = arquivo.read()
linhas = conteudo.split("\n")
for linha in linhas:
    pedacosLinha = linha.split(";")
    if int(pedacosLinha[1]) > 25 :
        maiores_de_25.append(pedacosLinha[0])
print("Maiores de 25:")
print(maiores_de_25)

Isso deve exibir:

Maiores de 25:
['Rafael', 'Alison']

O método append une diversos objetos, acresentando-os em uma lista. Se você fizer um append em uma lista e usar como argumento outra lista, você terá uma lista adicionada de outra lista ao final.

Já o método extend ele itera através de cada item da lista no argumento e adiciona cada item ao final da lista que utilizou o método.

Como o próprio em inglês diz, append vai somente anexar o objeto ao final, sem iterar pelos itens do objeto. O método extend faz essa iteração.

Conseguiu entender?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software