Pergunta sobre del

Pergunta sobre del

por José Coelho de Pina -
Número de respostas: 1

Salve,

Alguém pode me dizer qual o resultado do trecho de código a seguir? Qual o conteúdo de lista ao final?

Python 3.6.1 (default, Mar 22 2017, 06:17:05) 
[GCC 6.3.0 20170321] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> lista = [0, 11, 22, 33, 44, 55, 66]
>>> lista[3]
33
>>> lista[4]
44
>>> del lista[3]
>>> del lista[4]

E o código abaixo, qual o resultado?

Python 3.6.1 (default, Mar 22 2017, 06:17:05) 
[GCC 6.3.0 20170321] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> lista = [0, 11, 22, 33, 44, 55, 66]
>>> n = len(lista)
>>> for i in range( n):
...     print(lista[i])
...     del lista[-1]
... 
Em resposta à José Coelho de Pina

Re: Pergunta sobre del

por Beatriz Helena Ghiselli -
lista = [0, 11, 22, 33, 44, 55, 66]
lista[3] --> 33
lista[4] --> 44
del lista[3]
lista --> [0, 11, 22, 44, 55, 66]
del lista[4]
lista --> [0, 11, 22, 44, 66]



E acredito que e o segundo código de erro, ja que i vai de 0, até n-1 e estamos deletando o último elemento da lista a cada passagem,
quando i for 3 não existirá o elemento lista[i]

i = 0: lista[i] -> 0
lista ->[0, 11, 22, 33, 44, 55] (66 foi deletado)

i = 1: lista[i] -> 11
lista -> [0, 11, 22, 33, 44] (55 foi deletado)

i = 2: lista[i] -> 22
lista -> [0, 11, 22, 33] (44 foi deletado)

i = 3: lista[i] -> 33
lista -> [0, 11, 22] (33 foi deletado)

i = 4: lista[i] -> ?? nao existe o 4º elemento na lista