Python 강좌 : 제 27강 - 클래스

   

클래스


클래스(Class)는 객체 지향 프로그래밍(OOP)에서 특정한 객체를 생성하기 위해서 변수, 함수, 메소드이벤트 등을 정의하는 틀입니다.


class Human:
    def __init__(self):
        self.name="알 수 없음"
        self.age=99
    def man(self, name, age=10):
        self.name=name
        self.age=age
    def woman(self, name, age):
        self.name=name
        self.age=age
    def prt(self):
        print("이름은 " + self.name + "이고, 나이는 " + str(self.age))

a=Human()
a.man("박XX")

b=Human()
b.woman("김XX", 30)

c=Human()

a.prt()
b.prt()
print(vars(c))
결과
이름은 박XX이고, 나이는 10
이름은 김XX이고, 나이는 30
{‘name’: ‘알 수 없음’, ‘age’: 99}


class Human:

class 클래스이름:을 사용하여 클래스의 이름을 설정할 수 있습니다.


    def __init__(self):
        self.name="알 수 없음"
        self.age=99

def __init__(self)를 이용하여 클래스가 생성되었을 때의 변수들을 초기화할 수 있습니다.

self 인자는 자기 자신을 의미합니다.

self.변수이름을 통하여 변수들의 초기값을 할당할 수 있습니다.

name 변수와 age 변수에 아무런 값도 할당되지 않는다면, 알 수 없음99의 값이 각각 할당됩니다.


def man(self, name, age=10):
    self.name=name
    self.age=age

man 함수에는 nameage를 매개변수로 사용하며, age의 값은 10으로 초기설정이 되어있으므로, age 값을 입력하지 않는다면 10으로 자동 할당됩니다.


def woman(self, name, age):
    self.name=name
    self.age=age

woman 함수에는 nameage를 매개변수로 사용하며 두 개의 변수를 모두 할당해야 오류가 발생하지 않습니다.


def prt(self):
    print("이름은 " + self.name + "이고, 나이는 " + str(self.age))

prt 함수는 출력용 함수이며, 값을 입력하지 않고 호출만으로도 함수가 실행됩니다.


a=Human()
a.man("박XX")

b=Human()
b.woman("김XX", 30)

c=Human()

클래스이름을 변수에 할당하여 클래스의 내부 함수를 실행시킬 수 있습니다.

변수명.클래스함수명(매개변수1, 매개변수2)를 이용하여 ab 변수에 값을 할당할 수 있습니다.


a.prt()
b.prt()
print(vars(c))

*.prt() 함수는 아무런 인자를 필요로 하지 않으므로, 바로 사용이 가능합니다.

vars(변수이름)을 사용하여 사전 형식으로 할당된 값을 확인할 수 있습니다.

c 변수에는 __init__(self)를 통하여 초기화한 값인 알 수 없음99의 값이 할당되어 있습니다.



도움이 되셨다면 광고 클릭 부탁드립니다.

⤧  Next post C# OpenCV 강좌 : 제 51강 - 피부색 검출 ⤧  Previous post Python tkinter 강좌 : 제 31강 – Separator