본문 바로가기
Language/Python

파이썬 클래스 예제 및 사용법

by wakestand 2020. 1. 20.
반응형

파이썬에서 class 클래스명:

을 통해 클래스를 생성할 수 있는데

 

일단 클래스를 왜 쓰냐면

똑같은 계산식을 여러번 사용하는 경우

클래스 안에 함수(function)을 만들어 두고

 

매번 똑같은 계산식을 만들 필요 없이

클래스 안에서 함수를 가져와 사용하는 식으로 사용할 수 있다

똑같은 걸 여러번 만들어 사용하지 않고

한번 만들어 놓으면 그걸 그대로 가져다 쓰는 식으로

사용할 수 있다는 것!

 

위 예제는 클래스 안에 메소드를 만들어서 사용하는 예제인데

먼저 ClassExample 클래스 안에 __init__와 ten_year_call 메소드를 만들었는데

__init__은 생성자로 객체화 시에 자동으로 수행된다

생성자에 대한 내용은 아래 글을 참조하고

 

파이썬 생성자(__init__) 개념 및 예제

생성자란 객체화 시 자동으로 수행되는 문장을 만하는데 def __init__(파라미터): 를 통해 작성할 수 있다 생성자는 수동으로 만들어주지 않아도 객체화 시 자동으로 수행되긴 하지만 생성자를 만들 시 보낸 파라..

wakestand.tistory.com

클래스에서 만든 메소드를 사용하는 방법은

변수명 = 클래스명()

으로 객체화를 해 줄 수 있는데

 

객체화란?

해당 클래스의 정보를 변수 안에 넣어서

변수를 가지고 해당 클래스를 사용할 수 있다는 얘기!

 

예제를 보면

a = ClassExample()

을 해주면 a.~로

ClassExample의 내용을 자유롭게 가져다 쓸 수 있다

a.age로 a의 age값을 가져오거나

ClassExample에 있는 ten_year_method를 a.ten_year_call을 사용하는 등.. 

 

예제에 사용한 코드는 다음과 같다

 

class ClassExample:
    def __init__(self, name, age):  # 생성자(Constructor) 생성 시 자동 수행
        self.name = name
        self.age = age + 5  # 변수 생성 후 파라미터로 보낸 값 할당
        print("[생성자] self와 변수 비교 " + str(self.age) + " age : " + str(age))
        print("[생성자] 이름 : " + self.name + " 나이 : " + str(self.age))

    def ten_year_call(self, val):  # 함수
        return self.age + 10  # 반환


a = ClassExample("철수", 20)  # 객체화 (ClassExample의 정보를 a에 담음)
print(a.age)  # a의 age 출력
print(a.ten_year_call(50))  # a의 ten_year_call 메소드 수행
반응형

댓글