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.
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.