Articles

Python Empty List Tutorial – Como Criar uma Lista Vazia em Python

Posted on

Se quiser aprender como criar uma lista vazia em Python de forma eficiente, então este artigo é para si.

Vai aprender:

  • Como criar uma lista vazia usando parênteses rectos .
  • Como criar uma lista vazia usando list().
  • Os seus casos de uso.
  • Como são eficientes (um é mais rápido do que o outro!). Utilizaremos o módulo timeit para os comparar.

p> Comecemos! ✨

🔹 Usando parênteses rectos

P>É possível criar uma lista vazia com um par de parênteses rectos vazio, como este:

💡 Dica: Atribuímos a lista vazia a uma variável para a utilizar mais tarde no nosso programa.

Por exemplo:

num = 

A lista vazia terá comprimento 0, como se pode ver aqui mesmo:

>>> num = >>> len(num)0

As listas vazias são valores falsificados, o que significa que avaliam a False num contexto booleano:

>>> num = >>> bool(num)False

Adicionar elementos a uma lista vazia

P>Pode adicionar elementos a uma lista vazia utilizando os métodos append() e insert():

  • append() adiciona o elemento ao fim da lista.
  • insert() adiciona o elemento no índice particular da lista que escolher.

As listas podem ser valores verdadeiros ou falsos, dependendo se estão vazias ou não quando são avaliadas, pode utilizá-las em condições como esta:

if num:print("This list is not empty")else:print("This list is empty")

A saída deste código é:

This list is empty

Porque a lista estava vazia, por isso avalia para Falso.

Em geral:

  • Se a lista não estiver vazia, avalia para True, portanto a cláusula if é executada.
  • Se a lista estiver vazia, avalia para False, portanto a outra cláusula é executada.

Exemplo:

No exemplo abaixo, criamos uma lista vazia e atribuímos à variável num. Depois, utilizando um para loop, adicionamos uma sequência de elementos (inteiros) à lista que estava inicialmente vazia:

>>> num = >>> for i in range(3, 15, 2):num.append(i)

Verificamos o valor da variável para ver se os itens foram anexados com sucesso e confirmamos que a lista já não está vazia:

>>> num

💡 Dica: Usamos normalmente append() para adicionar o primeiro elemento a uma lista vazia, mas também se pode adicionar este elemento chamando o insert() método com índice 0:

>>> num = >>> num.insert(0, 1.5) # add the float 1.5 at index 0>>> num

🔸 Utilizando a lista() Construtor

Alternativamente, pode criar uma lista vazia com o tipo construtor list(), que cria um novo objecto de lista.

Segundo a Documentação Python:

Se não for apresentado qualquer argumento, o construtor cria uma nova lista vazia,

💡 Dica: Isto cria um novo objecto de lista em memória e como não passámos nenhum argumento a list(), será criada uma lista vazia.

Por exemplo:

num = list()

Esta lista vazia terá comprimento 0, como pode ver aqui mesmo:

>>> num = list()>>> len(num)0

E é um valor falso quando está vazio (avalia para False num contexto booleano):

>>> num = list()>>> bool(num)False

Exemplo:

Esta é uma lista totalmente funcional, por isso podemos adicionar-lhe elementos:

>>> num = list()>>> for i in range(3, 15, 2):num.append(i)

E o resultado será uma lista não vazia, como pode ver aqui mesmo:

>>> num

🔹 Casos de uso

  • Usamos tipicamente list() para criar listas a partir de iterables existentes, tais como cordas, dicionários, ou tuplos.
  • Vocês verão normalmente parênteses rectos sendo usados para criar listas vazias em Python porque esta sintaxe é mais concisa e rápida.

🔸 Eficiência

Espere! Acabei de lhe dizer que é mais rápido que list()

mas quanto mais rápido?

Vamos verificar as suas eficiências de tempo utilizando o módulo timeit.

Para utilizar este módulo no seu programa Python, precisa de o importar:

>>> import timeit

Especificamente, utilizaremos a função timeit deste módulo, que pode chamar com esta sintaxe:

💡 Dica: O código é repetido várias vezes para reduzir as diferenças de tempo que podem surgir de factores externos, tais como outros processos que possam estar a decorrer nesse momento em particular. Isto torna os resultados mais fiáveis para efeitos de comparação.

🚦 Nas suas marcas… prepare-se… pronto! Aqui está o código e a saída:

P>Primeiro, importamos o módulo.

>>> import timeit

Então, começamos a testar cada sintaxe.

Teste :

>>> timeit.timeit('', number=10**4)0.0008467000000109692

Lista de testes():

>>> timeit.timeit('list()', number=10**4)0.002867799999989984

💡 Dica: Repare que o código que quer que seja tempo tem de ser rodeado por aspas simples '' ou aspas duplas "". O tempo devolvido pela função timeit é expresso em segundos.

Compare estes resultados:

  • 0.0008467000000109692
  • list()0.002867799999989984

Pode-se ver que é muito mais rápido do que list(). Houve uma diferença de aproximadamente 0.002 segundos neste teste:

>>> 0.002867799999989984 - 0.00084670000001096920.0020210999999790147

Tenho a certeza que deve estar a perguntar isto agora mesmo: Porque é que list() menos eficiente que se fazem exactamente a mesma coisa?

Bem… list() é mais lento porque requer procurar o nome da função, chamá-la, e depois criar o objecto de lista na memória. Em contraste, é como um “atalho” que não requer tantos passos intermédios para criar a lista em memória.

Esta diferença de tempo não afectará muito o desempenho do seu programa mas é bom saber qual deles é mais eficiente e como funcionam nos bastidores.

🔹 Em Resumo

Pode criar uma lista vazia usando um par de parênteses rectos vazio ou o tipo construtor list(), uma função incorporada que cria uma lista vazia quando não são passados argumentos.

parênteses rectos são normalmente usados em Python para criar listas vazias porque é mais rápido e mais conciso.

Espero realmente que tenha gostado do meu artigo e o tenha achado útil. Agora pode criar listas vazias nos seus projectos Python. Veja os meus cursos online. Sigam-me no Twitter. ⭐️

Se quiser mergulhar mais fundo nas listas, pode gostar de ler:

  • Apenso da Lista Python – Como Adicionar um Elemento a um Array, Explicado com Exemplos
  • O Método Python Sort List Array – Método Python Sortar Array – Explicado com Exemplos
  • Apenso da Lista Python – Como Adicionar um Elemento a um Array, Explicado com Exemplos

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *