Neste artigo, primeiro discutiremos diferentes formas de criar uma lista vazia e depois veremos como anexar-lhe elementos usando para compreensão de loop ou um liner list.
Existem duas formas de criar uma lista vazia em python, ou seja, usando ou listando(). Vamos verificar ambas uma a uma,
Criar uma lista vazia em python usando
Em Python, uma lista vazia pode ser criada apenas escrevendo parênteses rectos, ou seja . Se não forem fornecidos argumentos entre parênteses rectos , então devolve uma lista vazia, isto é
# Creating empty List using sample_list = print('Sample List: ', sample_list)
Output:
Sample List:
Cria uma lista vazia em python utilizando lista() Construtor
A classe de lista de python fornece um construtor,
list()
Aceita um argumento opcional i.e. uma sequência iterável e cria uma lista a partir destes elementos. Se a sequência não for fornecida, então devolve uma lista vazia. Vamos usar isto para criar uma lista vazia,
# Creating empty List using list constructorsample_list = list()print('Sample List: ', sample_list)
Output:
Sample List:
Diferença entre e lista()
Podemos criar uma lista vazia em python ou usando ou list(), mas a principal diferença entre estas duas abordagens é a velocidade. é muito mais rápida do que list() porque,
- list() requer uma pesquisa de símbolos, pois pode ser possível que no nosso código, alguém tenha atribuído uma nova definição à palavra-chave listar.
- Chamada de função extra: Como construtor será chamado, então é uma chamada de função extra.
- Dentro do construtor verifica se uma sequência iterável é passada, se não, então apenas cria uma lista vazia.
Whereas, é apenas um literal em python que retorna sempre o mesmo resultado, ou seja, uma lista vazia. Assim, não é necessária uma pesquisa adicional de nome ou chamada de função, o que a torna muito mais rápida do que list().
Criar uma lista vazia e anexar itens
Até agora vimos duas formas diferentes de criar uma lista python vazia, agora vamos discutir as diferentes formas de anexar elementos à lista vazia.
Criar uma lista vazia e anexar elementos usando para loop
P>Ponhamos que queremos criar uma lista vazia e depois anexar 10 números (0 a 9 ) a ela. Vamos ver como fazer isso,
# Create an empty listsample_list = # Iterate over sequence of numbers from 0 to 9for i in range(10): # Append each number at the end of list sample_list.append(i)
Output:
Sample List:
Utilizamos a função range() para gerar uma sequência iterável de números de 0 a 9. Depois, usando a função for loop, iterámos sobre essa sequência e para cada número da sequência, chamámos a função list’s append() e passámos o número à função list.append(), que adiciona o item dado ao fim da lista no lugar.
Criar uma lista vazia e anexar itens à mesma numa linha usando a função List Comprehension
Usaremos a função range() como o exemplo anterior para gerar uma sequência iterável de números de 0 a 9. Mas em vez de chamar a função append(), usaremos a função List Compreensão() para iterar sobre a sequência e adicionar cada número no final da lista vazia. Vamos ver como fazer isso,
# Append 10 numbers in an empty list from number 0 to 9sample_list =
Output:
Sample List:
Aqui criámos uma lista vazia e acrescentámos-lhe elementos numa única linha.
Criar uma lista vazia e inserir elementos no final usando a função insert()
Python fornece uma função insert() i.e.
list.insert(index, item)
Insere o item no índice dado em lista no lugar.
Liquemos a lista de uso.inserir() para anexar elementos no fim de uma lista vazia,
# Create an empty listsample_list = # Iterate over sequence of numbers from 0 to 9for i in range(10): # Insert each number at the end of list sample_list.insert(len(sample_list), i)print('Sample List: ', sample_list)
Output:
Sample List:
Ihemos iterando numa sequência de números (0 a 9) desde que a minha função de intervalo(), para cada número a que chamámos a lista.função insert() e passámos-lhe o número juntamente com o tamanho do índice – 1 i.e. fim da lista.
Criar uma lista vazia e inserir elementos no início
Por vezes a nossa exigência é pouco diferente, i.e. em vez de fim queremos adicionar elementos no início de uma lista vazia. Vejamos como fazê-lo usando a função list.index(),
# Create an empty listsample_list = # Iterate over sequence of numbers from 0 to 9for i in range(10): # Insert each number at the start of list sample_list.insert(0, i)print('Sample List: ', sample_list)
br>Output:
Sample List:
br>Aqui, iteramos sobre uma sequência de números (0 a 9) fornecidos pela função range(), para cada número a que chamámos a lista.função insert() e passámos-lhe o número juntamente com o índice 0, ou seja, início da lista.
O exemplo completo é o seguinte,
def main(): print('*** Create an empty list using ***') # Creating empty List using sample_list = print('Sample List: ', sample_list) print('*** Create an empty list using list() ***') # Creating empty List using list constructor sample_list = list() print('Sample List: ', sample_list) print('***** Create an empty list and append elements at end *****') print('*** Create an empty list and append elements using for loop ***') # Create an empty list sample_list = # Iterate over sequence of numbers from 0 to 9 for i in range(10): # Append each number at the end of list sample_list.append(i) print('Sample List: ', sample_list) print('*** Create an empty list and append in one line ***') # Append 10 numbers in an empty list from number 0 to 9 sample_list = print('Sample List: ', sample_list) print('*** Create an empty list and insert elements at end ***') # Create an empty list sample_list = # Iterate over sequence of numbers from 0 to 9 for i in range(10): # Insert each number at the end of list sample_list.insert(len(sample_list), i) print('Sample List: ', sample_list) print('*** Create an empty list and insert elements at start ***') # Create an empty list sample_list = # Iterate over sequence of numbers from 0 to 9 for i in range(10): # Insert each number at the start of list sample_list.insert(0, i) print('Sample List: ', sample_list)if __name__ == '__main__': main()
Output:
*** Create an empty list using ***Sample List: *** Create an empty list using list() ***Sample List: ***** Create an empty list and append elements at end ******** Create an empty list and append elements using for loop ***Sample List: *** Create an empty list and append in one line ***Sample List: *** Create an empty list and insert elements at end ***Sample List: *** Create an empty list and insert elements at start ***Sample List: