Questão FC331190
Analise o código Python 2.7 a seguir. Sabe-se que a execução desse código produziu as duas linhas a seguir. Av Brasil, 243 Floresta Av Miracema, 12 Centro, apto 3 Assinale a opção
Linguagens de Programação
FGV · 2018
Analise o código Python 2.7 a seguir.

Sabe-se que a execução desse código produziu as duas linhas a seguir.
Av Brasil, 243 Floresta
Av Miracema, 12 Centro, apto 3
Assinale a opção que apresenta a correta definição para o método Endereco na classe End_com.
return self.Endereco()+ ", " + self.com
return End_simples.Endereco() \ + ", " + self.com
return super(End_com, self).Endereco() \ + ", " + self.com
return parent(End_com, self).Endereco() \ + ", " + self.com
Return self.parent.Endereco() \ + ", " + self.com
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A alternativa correta retorna a string construída a partir do método da superclasse e do atributo adicional da subclasse:
return super(End_com, self).Endereco() + ", " + self.com
Aqui super(End_com, self).Endereco() chama o método Endereco definido na classe-pai, obtendo o endereço base (por exemplo: "Av Brasil, 243 Floresta").
Em seguida há a concatenação com ", " + self.com, que acrescenta o complemento comercial armazenado em self.com (por exemplo: "apto 3" ou "Centro, apto 3"), formando a linha completa.
Essa forma é a correta em Python 2.7, pois super recebe explicitamente a classe da subclasse e a instância (End_com, self) para localizar o método da superclasse.
Conteúdo do catálogo FC Concursos · Atualizado em