Criar uma lista vazia com tamanho dado em Python

Neste post, veremos como criar uma lista vazia com tamanho dado em Python.

A fim de atribuir qualquer valor a uma lista utilizando o operador de atribuição na posição i, a = x, o tamanho da lista deve ser pelo menos i+1. Caso contrário, aumentará um IndexError, como se mostra abaixo:

a =
a = 1
print(a)
# raise IndexError: list assignment index out of range

1
2
3
4
5

A solução é criar uma lista vazia de None quando os itens da lista não são conhecidos antecipadamente. Isto pode ser facilmente feito como se mostra abaixo –

1
2
3
4

a = * 5
print(a)
# prints

Acima do código irá criar uma lista de tamanho 5, onde cada posição é inicializada por NoneNone é frequentemente usado em python para representar a ausência de um valor.

Outra alternativa para criar listas vazias com determinado tamanho é utilizar compreensões de listas:

a =
print(a)
# prints , , , , , ]

1
2
3
4

Que solução utilizar?

A primeira solução funciona bem para tipos sem referência como números. Mas pode encontrar erros de referenciação em alguns casos. Por exemplo, ] * 5 resultará na repetição da lista contendo o mesmo objecto de lista 5 vezes.

1
2
3
4
5

a = ] * 5
a.append(1)
print(a)
# prints , , , , , , ]

A solução para este problema é utilizar compreensões de lista como esta:

1
2
3
4
5

a = para x no intervalo(5)]
a.append(1)
print(a)
# prints , , , , ]

Deixe uma resposta

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