2026. 7. 11. 15:33ㆍ파이썬
class와 def로 덧셈·곱셈 기능 만들기
1. 문제
다음 Python 코드는 30, 200을 출력한다. 빈칸 (1), (2)에 알맞은 코드를 차례대로 작성하시오.
( 1 ) Calculator:
( 2 ) add(self, x, y):
return x + y
( 2 ) mul(self, x, y):
return x * y
cal = Calculator()
x = cal.add(10, 20)
y = cal.mul(10, 20)
print(x, y)
출력 결과:
30 200
2. 주요 포인트
이 문제에서는 다음 두 가지를 확인해야 합니다.
① 클래스를 선언하는 키워드
Python에서 클래스를 만들 때는 class 키워드를 사용합니다.
class 클래스이름:
따라서 다음 코드에서 (1)에 들어갈 내용은 class입니다.
class Calculator:
② 메서드를 정의하는 키워드
클래스 안에서 기능을 만들 때는 함수를 정의하는 def 키워드를 사용합니다.
def 메서드이름(self, 매개변수):
따라서 add()와 mul() 앞의 (2)에는 모두 def가 들어갑니다.
3. 빈칸 채우기
빈칸 (1)
( 1 ) Calculator:
Calculator라는 클래스를 선언해야 하므로 class가 들어갑니다.
class Calculator:
빈칸 (2)
( 2 ) add(self, x, y):
add()라는 메서드를 정의해야 하므로 def가 들어갑니다.
def add(self, x, y):
mul()도 메서드이므로 동일하게 def가 들어갑니다.
def mul(self, x, y):
4. 완성된 코드
class Calculator:
def add(self, x, y):
return x + y
def mul(self, x, y):
return x * y
cal = Calculator()
x = cal.add(10, 20)
y = cal.mul(10, 20)
print(x, y)
5. 풀이
5-1. 클래스 선언
class Calculator:
Calculator라는 이름의 클래스를 만듭니다.
이 클래스 안에는 덧셈을 수행하는 add()와 곱셈을 수행하는 mul()이 정의되어 있습니다.
5-2. 덧셈 메서드
def add(self, x, y):
return x + y
x와 y를 더한 결과를 반환합니다.
cal.add(10, 20)
계산 결과는 다음과 같습니다.
10 + 20 = 30
따라서 변수 x에는 30이 저장됩니다.
x = 30
5-3. 곱셈 메서드
def mul(self, x, y):
return x * y
x와 y를 곱한 결과를 반환합니다.
cal.mul(10, 20)
계산 결과는 다음과 같습니다.
10 × 20 = 200
따라서 변수 y에는 200이 저장됩니다.
y = 200
5-4. 객체 생성
cal = Calculator()
Calculator 클래스를 이용해 객체를 생성하고, 그 객체를 변수 cal에 저장합니다.
이후 객체를 통해 클래스 안의 메서드를 호출할 수 있습니다.
cal.add(10, 20)
cal.mul(10, 20)
5-5. 출력문
print(x, y)
현재 변수의 값은 다음과 같습니다.
x = 30
y = 200
print()에 값을 쉼표로 구분해 전달하면 값 사이에 공백이 하나 들어갑니다.
6. 정답
(1) class
(2) def
실행 결과:
30 200
7. 시험에서 주의할 부분
class와 def의 역할을 구분해야 합니다
class Calculator:
class는 클래스 전체를 선언할 때 사용합니다.
def add(self, x, y):
def는 클래스 안에서 메서드를 정의할 때 사용합니다.
self는 메서드의 첫 번째 매개변수입니다
def add(self, x, y):
self는 생성된 객체 자신을 가리킵니다.
메서드를 호출할 때는 self에 값을 직접 전달하지 않습니다.
cal.add(10, 20)
위 호출에서 다음과 같이 연결됩니다.
self → cal 객체
x → 10
y → 20
들여쓰기가 중요합니다
add()와 mul()은 Calculator 클래스에 포함되어야 하므로 클래스 내부에 들여쓰기해야 합니다.
class Calculator:
def add(self, x, y):
return x + y
8. 시험 풀이 요약
Calculator는 클래스이므로 빈칸 (1)에는 class가 들어갑니다.
add()와 mul()은 클래스 안에서 정의하는 메서드이므로 빈칸 (2)에는 def가 들어갑니다.
add(10, 20)의 결과는 30, mul(10, 20)의 결과는 200입니다.
따라서 정답은 다음과 같습니다.
(1) class
(2) def
출력 결과:
30 200
'파이썬' 카테고리의 다른 글
| 좌표처럼 값을 꺼내고 행 단위로 출력하기(Chatgpt) (0) | 2026.07.11 |
|---|---|
| Python 클래스와 메서드 정의 빈칸 채우기 문제 풀이(Claude) (0) | 2026.07.11 |
| Python 2차원 리스트와 중첩 반복문 문제 풀이(Claude) (0) | 2026.07.11 |
| 중첩 리스트를 순회해 원소 개수와 합계 구하기(Chatgpt) (0) | 2026.07.11 |
| Python while 반복문과 f-string 문제 풀이(Claude) (0) | 2026.07.11 |