반응형
2022.10.11 - [Python] - 주식 알고리즘 만들기 - 5.4) 클래스 (상속)
출처 : https://wikidocs.net/3465
1) 연습문제
문제 6-1
다음의 조건을 만족하는 Point라는 클래스를 작성하세요.
- Point 클래스는 생성자를 통해 (x, y) 좌표를 입력받는다.
- setx(x), sety(y) 메서드를 통해 x 좌표와 y 좌표를 따로 입력받을 수도 있다.
- get() 메서드를 호출하면 튜플로 구성된 (x, y) 좌표를 반환한다.
- move(dx, dy) 메서드는 현재 좌표를 dx, dy만큼 이동시킨다.
- 모든 메서드는 인스턴스 메서드다.
더보기
>>> 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 += dx
self.y += dy
>>>
문제 6-2
문제 6-1에서 생성한 Point 클래스에 대한 인스턴스를 생성한 후 4개의 메서드를 사용하는 코드를 작성하세요.
더보기
>>> a = Point(3,3)
>>> a.get()
(3, 3)
>>> a.setx(4)
>>> a.sety(2)
>>> a.get()
(4, 2)
>>> a.move(-4, -2)
>>> a.get()
(0, 0)
>>>
문제 6-3
아래의 Stock 클래스에 대해 2개의 인스턴스를 생성했을 때 클래스와 a와 b 인스턴스의 네임스페이스를 그려보세요.
>>> class Stock:
market = "kospi"
>>> a = Stock()
>>> b = Stock()
문제 6-4
문제 6-3의 코드에서 추가로 아래와 같은 코드를 수행했을 때 '???'로 표시된 부분의 결괏값을 적어보세요.
>>> a.market
???
>>> b.market
???
>>> Stock.market
???
>>> a.market = "kosdaq"
>>> b.market = "nasdaq"
>>> a.market
???
>>> b.market
???
>>> Stock.market
???
>>>
더보기
>>> a.market
'kospi'
>>> b.market
'kospi'
>>> Stock.market
'kospi'
>>> a.market = "kosdaq"
>>> b.market = "nasdaq"
>>> a.market
'kosdaq'
>>> b.market
'nasdaq'
>>> Stock.market
'kospi'
>>>
문제 6-5
문제 6-3, 문제 6-4의 코드가 모두 수행된 후의 Stock 클래스, a 인스턴스와 b 인스턴스의 네임스페이스를 그려보세요.
728x90
'Python' 카테고리의 다른 글
| 주식알고리즘만들기 목록 (0) | 2022.10.11 |
|---|---|
| 주식 알고리즘 만들기 - 6. 1) 파일 다루기 - 읽기 (0) | 2022.10.11 |
| 주식 알고리즘 만들기 - 5.4) 클래스 (상속) (0) | 2022.10.11 |
| 주식 알고리즘 만들기 - 5.3) 클래스 (네임스페이스, 변수) (0) | 2022.10.11 |
| 주식 알고리즘 만들기 - 5.2) 클래스 (__init__, self) (0) | 2022.10.11 |

