Computação Múltipla Escolha

Considere o contexto apresentado, analise o código da figura e assinale a alternativa que o preenche corretamente na lacuna.

Considere o contexto apresentado, analise o código da figura e assinale a alternativa que o preenche corretamente na lacuna.

  1. def init(self, self, nome, estoque=0):
  2. def init(self, nome, estoque=0):
  3. def repr(self, self, self, self):
  4. def repr(self, self, self, estoque_inicial):
  5. class init(self, self, self):

Resolução completa

Explicação passo a passo

B
Alternativa B

Alternativa B - def init(self, nome, estoque=0):

Explicação Didática

Esta questão avalia o conhecimento sobre a sintaxe de definição de métodos na linguagem Python, especificamente sobre métodos especiais (também chamados de dunder methods).

1. Sintaxe de Métodos em Python

Em Python, para criar um método dentro de uma classe, utilizamos a palavra-chave def (de define), seguida do nome do método e dos parâmetros entre parênteses.

  • Correto: def metodo(self, parametro):
  • Incorreto: class metodo(...) (Usado para definir classes, não métodos).

2. O Método Especial init

O texto da questão destaca que os métodos começam e terminam com dois sublinhados (). O método mais comum é o construtor, chamado init__.

  • Ele é responsável por inicializar os atributos do objeto quando ele é criado.
  • Sua assinatura padrão exige self como primeiro argumento, seguido de outros parâmetros opcionais ou obrigatórios.

3. Análise das Alternativas

Vamos verificar cada opção apresentada nas caixas da imagem:

OpçãoCódigoAnálise
class init(...)❌ Usa class. Isso tentaria criar uma nova classe chamada init, não um método.
def init(self, nome, estoque=0):Correta. Usa def, tem o nome correto init e a sintaxe de argumentos correta (self único).
class str(...)❌ Usa class e possui múltiplos argumentos self (inválido).
def repr(...)❌ Embora use def, possui múltiplos argumentos self (excesso de parâmetros).
class init(...)❌ Usa class novamente.

Conclusão

A única alternativa que segue a sintaxe correta para definir um método construtor em Python é a segunda opção. Ela utiliza a palavra-chave def, define o método init e passa os parâmetros corretos (self, nome, estoque=0).

Portanto, a resposta correta é a Alternativa B.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Computação

Ver mais Computação resolvidas

Tem outra questão de Computação?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.