ComeçarComece gratuitamente

Implementação de lógica para atributos

A classe Player que você criou anteriormente foi um bom começo, mas um dos principais benefícios dos atributos de nível de classe é a capacidade de restringir os limites superiores e/ou inferiores dos dados.

Neste exercício, você modificará a definição da classe Player para impedir que o valor de position ultrapasse o valor de MAX_POSITION no nível da classe.

Este exercício faz parte do curso

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

Ver Curso

Instruções de exercício

  • Defina o construtor __init__() com dois argumentos, self e position.
  • No construtor, verifique se position é menor ou igual ao nível de classe MAX_POSITION; em caso afirmativo, atribua position a self.position
  • Se position for maior do que o nível da classe MAX_POSITION, atribua-o ao atributo .MAX_POSITION da classe.
  • Crie um objeto Player p com uma posição de 6 e imprima seu MAX_POSITION.

Exercício interativo prático

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

class Player:
  MAX_POSITION = 10
  
  # Define a constructor
  ____ ____(____, ____):
    
    # Check if position is less than the class-level attribute value
    if ____ <= ____.____:
      ____.____ = ____
    
    # If not, set equal to the class-level attribute
    else:
      ____.____ = ____.____

# Create a Player object, p, and print its MAX_POSITITON
p = ____(____)
print(____.____)
Editar e executar código