python-6
문제 6-1
다음의 조건을 만족하는 Point라는 클래스를 작성하세요.
- Point 클래스는 생성자를 통해 (x, y) 좌표를 입력받는다.
- setx(x), sety(y) 메소드를 통해서 x와 y 좌표를 따로 입력받을 수도 있다.
- get() 메소드를 호출하면 튜플로 구성된 (x, y) 좌표를 리턴한다.
- move(dx, dy) 메소드는 현재 좌표를 dx, dy 만큼 이동시킨다.
- 모든 메소드는 인스턴스 메소드이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| class Point: def __init__(self, x, y): self.x = x self.y = y
def setx(self, x): self.x = x
def sety(self, y): self.y = y
def get(self): return (self.x, self.y)
def move(self, dx, dy): self.x = self.x + dx self.y = self.y + dy
|
문제 6-2
문제 6-1에서 생성한 Point 클래스에 대한 인스턴스를 생성한 후 네 개의 메소드를 사용하는 코드를 작성하세요.
(1, 2)
(3, 4)
(5, 4)
(5, 0)
문제 6-3
아래의 Stock 클래스에 대해 두 개의 인스턴스를 생성했을 때 클래스와 a와 b 인스턴스의 네임 스페이스를 그려보세요.
1 2 3 4 5 6
| >>> class Stock: market = "kospi"
>>> a = Stock() >>> b = Stock()
|
문제 6-4
문제 6-3의 코드에서 추가로 아래와 같은 코드를 수행했을 때 ‘???’로 표시된 부분의 결괏값을 적어보세요.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| >>> a.market ??? >>> b.market ??? >>> Stock.market ??? >>> a.market = "kosdak" >>> b.market = "nasdak" >>> a.market ??? >>> b.market ??? >>> Stock.market ??? >>>
|
1 2
| class Stock: market = "kospi"
|
'kospi'
'kospi'
'kospi'
1 2
| a.market = "kosdak" b.market = "nasdak"
|
'kosdak'
'nasdak'
'kospi'
문제 6-5
문제 6-3, 문제 6-4의 코드가 모두 수행된 후의 Stock 클래스, a와 b 인스턴스의 네임 스페이스를 그려보세요.
Hoyuo안드로이드 개발자입니다