ComeçarComece gratuitamente

Adição de um construtor alternativo

Os métodos de classe são uma ótima maneira de permitir uma forma alternativa de criar um objeto a partir de uma classe, como por exemplo, por meio de um arquivo ou aceitando informações diferentes e executando uma tarefa durante a construção para retornar os atributos necessários.

Neste exercício, você trabalhará com a classe Person. O construtor espera um nome e uma idade durante a inicialização. Você adicionará um método de classe que permite a inicialização fornecendo o nome e o ano de nascimento, em que o método calculará a idade a partir do ano de nascimento.

Este exercício faz parte do curso

Introdução à programação orientada a objetos em Python

Ver Curso

Instruções de exercício

  • Adicione um decorador de método de classe.
  • Defina o método da classe from_birth_year(), que aceita três argumentos: a palavra convencional usada como um argumento especial referente à classe, name e birth_year.
  • No método, crie a variável age calculando a diferença entre o atributo de classe CURRENT_YEAR e birth_year.
  • Retorna os atributos name e age da classe.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

class Person:
  CURRENT_YEAR = 2024
  def __init__(self, name, age):
    self.name = name
    self.age = age
  
  # Add a class method decorator
  ____
  # Define the from_birth_year method
  def ____(____, ____, ____):
    # Create age
    age = ____.____ - ____
    # Return the name and age
    return ____(____, ____)

bob = Person.from_birth_year("Bob", 1990)
Editar e executar código