속성에 로직 구현하기
이전에 만든 Player 클래스는 좋은 출발점이었지만, 클래스 수준 속성의 주요 장점 중 하나는 데이터의 상한/하한을 제한할 수 있다는 점이에요.
이 연습 문제에서는 Player 클래스 정의를 수정해, position 값이 클래스 수준의 MAX_POSITION 값을 초과하지 못하도록 제한해 볼 거예요.
이 연습은 강의의 일부입니다
Python 객체 지향 프로그래밍 입문
연습 안내
self와position두 인자를 받는__init__()생성자를 정의하세요.- 생성자 내부에서
position이 클래스 수준의MAX_POSITION보다 작거나 같은지 확인하고, 그렇다면self.position에position을 할당하세요. position이 클래스 수준의MAX_POSITION보다 크면, 클래스의.MAX_POSITION속성 값을 할당하세요.- 위치가
6인Player객체p를 만들고, 그MAX_POSITION을 출력하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
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(____.____)