Coding/Python

[코뮤니티] 클래스와 메소드, 생성자

폴밴 2021. 9. 29. 14:18

계산기 기본기능을 클래스를 이용해 만들어보았다.

클래스 안에는 메소드가 있으며 이를 이용해 만든 것을 객체라고 한다.
클래스는 붕어빵틀과 같이 객체를 생성할 수 있으며, 이로 만들어진 붕어빵을 객체라고 볼 수 있다.

class 안의 def 함수는 메소드(method)라고 불린다.
메소드의 self 파라미터는 객체 자신을 메소드로 전달한다.

def __init__() 생성자를 사용하면 초기값을 설정하고 객체가 생성될 때 자동으로 호출된다.
(a = Calculator(x, y))

class Calculator:
    def __init__(self, first, second):
        self.first = first
        self.second = second
    def add(self):
        result = self.first + self.second
        return result
    def subtract(self):
        result = self.first - self.second
        return result
    def multiply(self):
        result = self.first * self.second
        return result
    def divide(self):
        result = self.first / self.second
        return result

x = float(input("첫 번째 수를 입력하세요. :"))
y = float(input("두 번째 수를 입력하세요. :"))

a = Calculator(x,y) # 객체 생성과 동시에 초기값 설정
print(f"{x} + {y} = {a.add()}")
print(f"{x} - {y} = {a.subtract()}")
print(f"{x} * {y} = {a.multiply()}")
print(f"{x} / {y} = {a.divide()}")

실행 결과