Contents

7 Funções de lista que todos os programadores Python devem conhecer

Key Takeaways

A utilização da função len() pode ser altamente vantajosa quando se trata de determinar a quantidade de elementos presentes numa lista, levando a uma economia de tempo e de código quando comparada com a necessidade de efetuar cálculos manuais.

O método append() é utilizado para adicionar um novo elemento ao fim de uma lista, facilitando ajustes directos ao seu conteúdo, de acordo com critérios pré-determinados ou com as entradas do utilizador.

O método extend() serve para aumentar uma lista existente através da incorporação de vários itens em simultâneo, simplificando assim o processo de aumentar uma lista com elementos adicionais de uma forma abrangente.

As listas são um componente fundamental das estruturas de dados e das técnicas algorítmicas da linguagem de programação Python. A sua importância não pode ser exagerada, pois desempenham um papel fundamental na implementação de vários programas. A omissão de listas em qualquer projeto seria altamente impraticável e suscetível de prejudicar a sua eficiência e eficácia.

O Python oferece uma série de funções incorporadas para facilitar a execução de manipulações de listas padrão, com o objetivo de simplificar os processos de desenvolvimento dos programadores, fornecendo-lhes ferramentas eficientes.

A função len()

A função len() pode ser utilizada para determinar a quantidade de elementos presentes numa lista. Um exemplo demonstrativo é apresentado de seguida:

 my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
list_length = len(my_list)
print(list_length) # returns 7 

A ausência da função len() requer o cálculo manual do comprimento, como ilustrado pelo trecho de código que emprega um loop for em Python.

 my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
count = 0

for i in my_list:
    count \\+= 1

print(count) # returns 7

Sem dúvida, a utilização da função len() pode levar a uma implementação mais concisa e eficiente em determinadas situações. Recomenda-se vivamente a utilização desta função quando for considerado apropriado para otimizar o seu código.

A função append()

O método append() pode ser utilizado para acrescentar um novo elemento à conclusão de uma lista, o que pode revelar-se particularmente útil quando é empregue imediatamente após o cumprimento de um pré-requisito específico no código. Uma ilustração de tal uso poderia ser a seguinte:

 my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
question = input("Do you love Python?: ").lower()

if question == "yes":
    my_list.append("Python is the best!!") # use of the append() function
else:
    my_list.append("You should try Python") # use of the append() function

print(my_list)

O presente exemplo emprega uma instrução if para acrescentar uma frase específica à lista original de frases, de acordo com a entrada fornecida pelo utilizador.

/pt/images/append-list-function.jpg

O método append() foi concebido para adicionar um único elemento a uma lista de forma direta. No entanto, é possível obter resultados semelhantes utilizando o operador de inserção ( insert() ) ou o operador de concatenação ( \+ ). Estas alternativas permitem a adição de vários elementos em simultâneo, simplificando o processo e evitando a necessidade de chamadas repetidas ao método append() .

 my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
my_list \\+= ["Python is the best!!"]

A incorporação do operador de adição no código pode resultar numa diminuição da eficiência devido à sua tendência para criar uma cópia separada e actualizada da lista original, em vez de modificar diretamente a lista existente. Por outro lado, a utilização do método append() permite a modificação imediata da lista inicial sem incorrer na sobrecarga de gerar uma cópia adicional.

A função extend()

O método “extend()” é uma função predefinida que permite adicionar vários elementos a uma lista simultaneamente, aceitando um único argumento que contém esses elementos. Para utilizar esta funcionalidade, basta passar os itens pretendidos como argumento para o método “extend” da sua lista de destino.

 my_list = [1, 2, 3, "hello", "rice", "code", 1.2]

my_list.extend(["item", "muo", 350])

print(my_list)
# prints [1, 2, 3, 'hello', 'rice', 'code', 1.2, 'item', 'muo', 350] 

O método extend() em Python foi concebido para aceitar apenas um único argumento, necessitando da utilização de uma abordagem alternativa, tal como anexar itens a uma lista, como demonstrado no excerto de código fornecido.

A função reverse()

A função reverse, também conhecida como “iteração inversa” ou “iteração invertida”, é um conceito de programação que altera a sequência de elementos de uma determinada lista, reordenando-os no sentido inverso. Esta operação pode ser efectuada utilizando várias linguagens de programação, como Python e Java. Uma forma comum de implementar esta funcionalidade é através da recursão, em que o último elemento da lista se torna o primeiro elemento depois de ser invertido. Por exemplo, se tivermos uma lista chamada ‘minha\lista’, chamar o seu método reverse resultaria em que ela se tornaria [‘z’, ‘y’, ‘x’] para uma ordem alfabética típica inglesa.

 my_list = [1, 2, 3, "hello", "rice", "code"]

my_list.reverse()
print(my_list) # prints ['code', 'rice', 'hello', 3, 2, 1]

Para reordenar uma lista por ordem inversa sem utilizar o método interno reverse() , pode utilizar-se a notação de fatias do Python. Um exemplo demonstrativo é o seguinte:

 my_list = [1, 2, 3, "hello", "rice", "code"]

reversed_list = my_list[::-1]
print(reversed_list) # prints ['code', 'rice', 'hello', 3, 2, 1]

No exemplo anterior, a utilização da expressão minha_lista[::-1] resulta na criação de uma réplica invertida da lista inicial.Consequentemente, isto implica a existência de duas listas separadas na memória, o que pode não ser o ideal quando o único objetivo é inverter a própria lista inicial.

A função insert()

O método insert() altera uma lista inserindo um novo elemento numa posição específica da sequência, à semelhança do método append() . Isto proporciona uma maior flexibilidade em comparação com a simples inserção de elementos no final de uma lista, uma vez que permite ao utilizador colocar os itens exatamente onde pretende dentro da coleção ordenada. Um exemplo ilustrativo é apresentado a seguir:

 my_list = [1, 2, 3, "hello", "rice", "code"]

my_list.insert(0, "first") # add "first" to the beginning of your list
print(my_list) # prints ['first', 1, 2, 3, 'hello', 'rice', 'code']

O código fornecido demonstra a utilização correcta da função insert() em JavaScript.

 your_list.insert(index, new_list_item)

A função sort()

A função sort() é utilizada para organizar uma coleção de itens com uma estrutura de dados específica, como números ou cadeias de caracteres, por ordem ascendente. Por exemplo, considere a seguinte ilustração:

 my_list = [1, 2, 10, 30, 3, 2.4]
my_list2 = ['code', 'rice', 'zion', 'hello']

my_list.sort()
my_list2.sort()

print(my_list) # prints [1, 2, 2.4, 3, 10, 30]
print(my_list2) # prints ['code', 'hello', 'rice', 'zion']

Ao utilizar a função sort() numa lista heterogénea, constituída por elementos de diferentes tipos de dados, como caracteres alfabéticos e valores numéricos, é gerado um erro do tipo TypeError .

A função count()

A função count() é utilizada para determinar a frequência com que um determinado elemento aparece numa dada lista e devolve essa informação ao utilizador. Para utilizar esta funcionalidade, siga estes passos:

 my_list = ['code', 10, 30, 'code', 3, 'code', 'rice', 5]
print(my_list.count('code')) # prints 3

Executar esta ação sem utilizar o método count() exigiria uma maior quantidade de codificação. Consideremos um cenário como o seguinte:

 my_list = ['code', 10, 30, 'code', 3, 'code', 'rice', 5]
count_code = 0

for item in my_list:
    if item == 'code':
        count_code \\+= 1

print(count_code) # prints 3

A função len() calcula o número total de elementos de uma determinada lista, enquanto a função count() determina a frequência com que um determinado elemento aparece nessa mesma lista.

Usando funções de lista para escrever um código melhor

Utilizar o conjunto de operações fornecidas pelas funções de manipulação de lista incorporadas no Python pode simplificar muito o processo de codificação e minimizar a necessidade de construções de programação complicadas e com muitos recursos. Estas características são muitas vezes instrumentais para acelerar o desenvolvimento, ao mesmo tempo que promovem uma implementação mais sucinta e de fácil manutenção.

A utilização de funções de lista facilita a execução de tarefas padrão de manipulação de listas, permitindo assim uma maior concentração noutros aspectos do trabalho de programação.