본문 바로가기
PYTHON

파이썬 클래스로 사칙연산 구현하기[PYTHON개발]

by cellin 2024. 1. 11.

클래스: 똑같은 무언가를 계속 만들어 낼수 있는 설계도면 같은 것

객체: 클래스를 통해 만들어내진 결과물

메서드: 클래스 안에 구현된 함수

 

**객체와 인스턴스의 차이점

클래스로 만든 객체를 '인스턴스'라고도 합니다.

그럼 예를 들어서 a=bread()로 만든 a는 객체입니다. a 객체는 Cookie의 인스턴스 입니다.

이렇게 인스턴스라는 말은 특정객체(a)가 어떤 클래스의 객체인지 관계위주로 설명할 때 사용됩니다.

 

 

 

 

 

클래스로 사칙연산을 구현해보도록 하겠습니다

 

class calculator:
    def __init__(self, num1, num2):
        self.num1 = num1
        self.num2 = num2
        print('첫번째숫자: ', num1, '두번째숫자: ',num2)
    def add(self):
        result=self.num1+self.num2
        return result
    def sub(self):
        result=self.num1-self.num2
        return result
    def mul(self):
        result=self.num1*self.num2
        return result
    def div(self):
        result=self.num1/self.num2
        return result  
 

 

 

아래와 같이 호출하여 사용가능합니다.

a=calculator(1,2)
a.add()
a.sub()
a.mul()
a.div()
 

 

 

만약 생성자인 __init__메소드를 사용하지 않으면

class calculator:
    def setdata(self, num1, num2):
        self.num1 = num1
        self.num2 = num2
        print('첫번째숫자: ', num1, '두번째숫자: ',num2)
    def add(self):
        result=self.num1+self.num2
        return result
    def sub(self):
        result=self.num1-self.num2
        return result
    def mul(self):
        result=self.num1*self.num2
        return result
    def div(self):
        result=self.num1/self.num2
        return result  
 

 

 

calculator함수를 호출하고

setdata 메소드를 호출하여 값을 먼저 전달 하여야하는

1줄의 코드가 추가되는 번거로움이 발생합니다

a=calculator()
a.setdata(1,2)
a.add()
a.sub()
a.mul()
a.div()
 

 

 

 

 

 

 

 

 

 

 

 

사진: UnsplashMatt Hoffman

728x90
반응형