Analise o código Python a seguir. L1=[10,20,30] L2=[40,50]...
Analise o código Python a seguir.
L1=[10,20,30]
L2=[40,50]
L1.append(L2)
print L1
Assinale a opção que descreve corretamente o que acontece quando esse programa é executado no Python 2.7
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Resposta Correta: B - Exibe “[10, 20, 30, [40, 50]]”.
Para compreender a questão e por que a alternativa B é a correta, é importante entender o funcionamento do método append()
em Python. Este método é utilizado para adicionar um elemento ao final de uma lista. No código fornecido, temos duas listas: L1
com os elementos [10, 20, 30] e L2
com os elementos [40, 50].
Quando executamos L1.append(L2)
, estamos adicionando a lista L2
como um único elemento ao final da lista L1
. Isso significa que o último elemento de L1
será a lista L2
completa, e não seus elementos individuais. Assim, o resultado final da execução do código será uma lista que contém outra lista como um de seus elementos, resultando em [10, 20, 30, [40, 50]].
É importante observar que o Python 2.7 não exige parênteses ao redor dos argumentos da função print
, diferentemente do Python 3.x, onde os parênteses seriam obrigatórios. Portanto, o código fornecido é válido e não produzirá uma mensagem de erro, eliminando a alternativa A.
As alternativas C, D e E são incorretas porque não representam o comportamento do método append()
quando usado para adicionar uma lista inteira a outra. A alternativa C sugeriria que os elementos de L2
foram adicionados individualmente ao final de L1
, o que aconteceria se tivéssemos usado o método extend()
ou a operação de concatenação de listas. A alternativa D sugere uma impressão de duas listas separadas, o que não é o caso, e a alternativa E sugere que a lista resultante está vazia, o que claramente não acontece aqui.
Portanto, a alternativa B é a única que descreve corretamente o comportamento do programa Python 2.7 com o código fornecido, onde a lista L2
é adicionada como um subelemento na lista L1
.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Gab: B
A resposta é a letra B, pois o comando append inclui o valor da variável L2 na posição final do vetor L1. Como o conteúdo da variável L2 é um vetor de tamanho 2 [40,50], ele que será incluído na 4ª posição de L1.
“[10, 20, 30, [40, 50]]”.
posições 1ª 2ª 3ª 4ª
O comando "append" é utilizado para adicionar um valor completo a uma variável. No exemplo apresentado, será retornado o resultado de impressão “[10, 20, 30, [40, 50]]”, pois L1 já continha os valores [10, 20, 30] e fora atribuído outros valores a essa variável, valores de L2 [40, 50], que juntando ficou “[10, 20, 30, [40, 50]]”.
Para dar a resposta C, é o seguinte código:
L1=[10,20,30]
L1.append(40)
L1.append(50)
print L1
Quanto à resposta do colega DIEGGO, só acrescentaria que o Python começa de 0 [Zero]:
[10, 20, 30, [40, 50]]
0 1 2 3
O comando append inclui o valor da variável L2 na posição final do vetor L1.
Como o conteúdo da variável L2 é um vetor de tamanho 2 [40,50], ele que será incluído na 4ª posição de L1.
Ué,
professor, e porque a resposta não é letra C?? Muito bem observado, padawan!
O método append inclui a lista L2 como se fosse só um elemento! Ou seja, a lista final tem 4 elementos ao
invés de 5, pois L2 é tratado como se fosse uma coisa só! O gabarito, portanto, é a letra B.
-Estratégia Concursos-
Se fosse a versão 3.X do Python, daria uma mensagem de erro, pois o uso de parênteses no comando PRINT se tornou obrigatório a partir dessa versão. Exemplo:
a = 2
b = 3
print ( a + b ) //CERTO
print a + b // ERRADO
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo