- 
                                L=[1] while len(L) < 6:                          # a funcao len() retorna o numero de itens em um objeto        L.append(L[-1]*len(L)) """ o metodo append() acrescenta elementos no fim da lista e o L[-1] esta fazendo referencia ao ultimo elemento, que multiplicado por len(L) vai ter a sequencia de: L.append(1*1)  primeiro luping igual a 1; L.append(1*2)  primeiro luping igual a 2; L.append(2*3)  primeiro luping igual a 6; L.append(6*4)  primeiro luping igual a 24; L.append(24*5)  primeiro luping igual a 120. """ print L 
- 
                                Porém a linguagem python exige identação. Portanto, ou o site cadastrou mal o exemplo do código ou o gabarito está errado.  
- 
                                Segundo o Gabarito da Banca, a resposta é a letra E (erro de execução).  Pensei que fosse letra D, uma vez que o erro ocorre antes mesmo da execução do programa. 
- 
                                Galerinha, lembrem-se que a função len(L) retorna o tamanho da lista L, que L[-1] referencia o último elemento da lista e que L.append(x) insere um novo elemento x no final da lista L. No início, L = [1]. Logo, len(L) = 1. Ele chega no while e faz o teste. len(L) < 6 ? Verdadeiro porque len(L) = 1. Então entra na 1a iteração do while. Na 1a iteração é feito L.append(L[-1]*len(L)) = L.append(1 * 1) = L.append(1) = [1, 1]. Na 2a iteração é feito L.append(L[-1]*len(L)) = L.append(1 * 2) = L.append(2) = [1, 1, 2]. Na 3a iteração é feito L.append(L[-1]*len(L)) = L.append(2 * 3) = L.append(6) = [1, 1, 2, 6]. Na 4a iteração é feito L.append(L[-1]*len(L)) = L.append(6 * 4) = L.append(24) = [1, 1, 2, 6, 24]. Na 5a iteração é feito L.append(L[-1]*len(L)) = L.append(24 * 5) = L.append(120) = [1, 1, 2, 6, 24, 120].   A 6a iteração do while não ocorre porque a essa altura len(L) < 6 deixa de ser verdade pois len(L) = 6. E a nossa lista L mutável ao final será [1, 1, 2, 6, 24, 120]. Resposta: C   
- 
                                Que gabarito é esse? O corre é a letra E. Tentem rodar esse código... O print precisar dos () para funcionar. Assim: print(L) 
- 
                                Galerinha, lembrem-se que a função len(L) retorna o tamanho da lista L, que L[-1] referencia o último elemento da lista e que L.append(x) insere um novo elemento x no final da lista L. No início, L = [1]. Logo, len(L) = 1. Ele chega no while e faz o teste. len(L) < 6 ? Verdadeiro porque len(L) = 1. Então entra na 1ª iteração do while. Na 1ª iteração é feito L.append(L[-1]*len(L)) = L.append(1 * 1) = L.append(1) = [1, 1]. Na 2ª iteração é feito L.append(L[-1]*len(L)) = L.append(1 * 2) = L.append(2) = [1, 1, 2]. Na 3ª iteração é feito L.append(L[-1]*len(L)) = L.append(2 * 3) = L.append(6) = [1, 1, 2, 6]. Na 4ª iteração é feito L.append(L[-1]*len(L)) = L.append(6 * 4) = L.append(24) = [1, 1, 2, 6, 24]. Na 5ª iteração é feito L.append(L[-1]*len(L)) = L.append(24 * 5) = L.append(120) = [1, 1, 2, 6, 24, 120].   A 6ª iteração do while não ocorre porque a essa altura len(L) < 6 deixa de ser verdade pois len(L) = 6. E a nossa lista L mutável ao final será [1, 1, 2, 6, 24, 120]. Resposta: C 
- 
                                O comando "print L" só seria executado caso o interpretador fosse python 2. Em python 3 vai haver erro de execução, pq requer o parênteses. Ao meu ver deveria ser anulada, pois há duas respostas possiveis, letra C e E. 
- 
                                Ao executar o algoritmo a saída apresentada é essa:   [1, 1] [1, 1, 2] [1, 1, 2, 6] [1, 1, 2, 6, 24] [1, 1, 2, 6, 24, 120]   Em cada append (adicionar um termo ao vetor), o valor final é multiplicado pelo tamanho (len) atual do vetor, e depois impresso, repetindo isso enquanto o tamanho do vetor for menor que 6.   1ª loop = append (1*1) = 1	 2ª loop = appen (1*2) = 2 3ª loop = append (2*3) = 6 4ª loop = append (6*4) = 24 5ª loop = append (24*5) = 120   Vetor atingiu o tamanho de 6, fim do while     
- 
                                Discordo do gabarito, pois no final devia estar print (L) , pois com o L sem os parenteses dá erro na execução. 
- 
                                A função len(L) retorna o tamanho da lista L, que L[-1] referencia o último elemento da lista e que L.append(x) insere um novo elemento x no final da lista L. No início, L = [1].  Logo, len(L) = 1. Ele chega no while e faz o teste. len(L) < 6 ? Verdadeiro porque len(L) = 1. Então entra na 1ª iteração do while. Na 1ª iteração é feito L.append(L[-1]*len(L)) = L.append(1 * 1) = L.append(1) = [1, 1]. Na 2ª iteração é feito L.append(L[-1]*len(L)) = L.append(1 * 2) = L.append(2) = [1, 1, 2]. Na 3ª iteração é feito L.append(L[-1]*len(L)) = L.append(2 * 3) = L.append(6) = [1, 1, 2, 6]. Na 4ª iteração é feito L.append(L[-1]*len(L)) = L.append(6 * 4) = L.append(24) = [1, 1, 2, 6, 24]. Na 5ª iteração é feito L.append(L[-1]*len(L)) = L.append(24 * 5) = L.append(120) = [1, 1, 2, 6, 24, 120]. A 6ª iteração do while não ocorre porque a essa altura len(L) < 6 deixa de ser verdade pois len(L) = 6. E a nossa lista L mutável ao final será [1, 1, 2, 6, 24, 120].