정보처리기사 · 핵심요약

2026 정보처리기사 필기 핵심요약

2026

학습유형 선택

프로그래밍 언어 활용

핵심273

Python - 클래스

출제 빈도 1회

원본 86~87쪽

• 정의 형식

class 클래스명:

class는 예약어로, 그대로 입력하고 클래스명은 사용자가 임의로 지정한다.

실행할 문장
def 메소드명(self, 인수):

def는 메소드를 정의하는 예약어로, 그대로 입력하고, 메소드명은 사용자가 임의로 지정한다.

self는 메소드에서 자기 클래스에 속한 변수에 접근할 때 사용하는 명칭으로, 일반적으로 self를 사용하지만 사용자가 임의로 지정해도 된다.

‘인수’는 메소드를 호출하는 곳에서 보낸 값을 저장할 변수로, 사용자가 임의로 지정한다.

실행할 문장
return 값

return은 메소드를 호출한 위치로 값을 돌려주기 위해 사용하는 예약어로, 그대로 입력한다. return 값이 없는 경우에는 생략할 수 있다.

•‘값’에는 변수, 객체, 계산식 등이 올 수 있다.

• 객체의 선언 형식

변수명 = 클래스명( )

변수명은 사용자가 임의로 지정하고, 사전에 정의한 클래스명과 괄호( )를 적는다.

예제 다음은 두 수를 교환하는 프로그램을 Python으로

구현한 것이다.

class Cls:

Cls 클래스 정의부의 시작점이다. 여기서부터 ❼번까지가 클래스 정의부에 해당한다.

x, y = 10, 20

Cls 클래스의 변수(속성) x와 y를 선언하고, 각각 10과 20으로 초기화한다.

❹ def chg(self):
❺ temp = self.x
❻ self.x = self.y
❼ self.y = temp
❶ a = Cls( )
❷ print(a.x, a.y)
❸ a.chg( )
❽ print(a.x, a.y)
코드 해설

❶ Cls 클래스의 객체 a를 생성한다. 객체 a는 Cls의 속성 x, y와 메소드 chg( )를 갖는다.

• a : 사용자 정의 변수다. 사용자가 임의로 지정함

Cls( ) : 클래스의 이름이다. 괄호( )를 붙여 그대로 적음

a.x

a.y

1020

a❷ a 객체의 속성 x와 y를 출력한다.

• 객체와 속성은 .(마침표)로 연결한다.

결과❸ a 객체의 메소드 chg를 호출한다. ❹번으로 이동한다.

10 20

객체와 메소드는 .(마침표)로 연결한 후 괄호( )를 붙여 적는다. ❹ a 객체의 메소드 chg의 시작점이다. 별도로 사용되는 인수가 없으므로 괄호( )에는 self만 적는다. ❺ a 객체의 속성 x의 값을 temp에 저장한다.

self : 메소드 안에서 사용되는 self는 자신이 속한 클래스를 의미함

• self.x : a.x와 동일함

a.x

a.y

10
1020

temp

a

❻ a 객체의 속성 y의 값을 a 객체의 속성 x에 저장한다.

a.x

a.y

10
2020

temp

a

❼ ‌temp의 값을 a 객체의 속성 y에 저장한다. 메소드 chg가 종료되었으므로 메소드를 호출한 다음 문장인 ❽번으로 제어를 옮긴다.

a.x

a.y

10
2010

temp

a

❽ a 객체의 속성 x와 y를 출력한다.

10 20 20 10

결과

원본 추출 이미지(검수용·회차 숫자 원문 포함)

구조화된 본문이 원본과 맞게 들어갔는지 확인하기 위한 이미지입니다. 이미지 안에는 원본 회차 숫자와 다음 절 일부가 포함될 수 있습니다.