끄적끄적 코딩
article thumbnail
Published 2020. 9. 15. 02:58
[파이썬] 클래스 Python
728x90

클래스는 변수와 메소드를 가지고 있습니다.
해당 클래스로 새로운 객체를 만들면 그 객체는 해당 클래스의 변수와 메소드를 소유하게 됩니다


클래스로부터 만들어지는 것을 객체라고 합니다.

아래에서 guest는 People 클래스의 인스턴스 입니다.
__init__는 클래스의 생성자 역할을 합니다.

class People:
    def __init__(self, name, age, weight):
        self.name = name
        self.age = age
        self.weight = weight
        print("{0}이 입장하였습니다.".format(self.name))
        print("나이는 {0}, 몸무게는 {1} 입니다.".format(self.age, self.weight))
        
guest_1 = People("OWEN", 23, 80)
guest_2 = People("JOLLY", 19, 52)

출력결과
OWEN이 입장하였습니다.
나이는 23, 몸무게는 80 입니다.
JOLLY이 입장하였습니다.
나이는 19, 몸무게는 52 입니다


class People:
    def __init__(self, name, age, weight):
        self.name = name
        self.age = age
        self.weight = weight
        print("{0}이 입장하였습니다.".format(self.name))
        print("나이는 {0}, 몸무게는 {1} 입니다.".format(self.age, self.weight))

guest_1 = People("OWEN", 23, 80)
guest_2 = People("JOLLY", 19, 52)

print("이름 : {0}, 나이 : {1}, 몸무게 : {2}".format(guest_1.name, guest_1.age, guest_1.weight))

guest_1.adult = True
if guest_1.adult == True:
    print("{0}은 성인입니다.".format(guest_1.name))

출력결과
OWEN이 입장하였습니다.
나이는 23, 몸무게는 80 입니다.
JOLLY이 입장하였습니다.
나이는 19, 몸무게는 52 입니다.
이름 : OWEN, 나이 : 23, 몸무게 : 80
OWEN은 성인입니다.

클래스 외부에서 객체에 변수를 만들어서 사용할 수 있습니다

class People:
    def __init__(self, name, age, weight):
        self.name = name
        self.age = age
        self.weight = weight
        print("{0}이 입장하였습니다.".format(self.name))
        print("나이는 {0}, 몸무게는 {1} 입니다.".format(self.age, self.weight))

    def eat(self, food):
        print("{0}이 {1}을 먹습니다.".format(self.name, food))
        self.increase()

    def increase(self):
        print("몸무게가 {0}에서 {1}로 증가되었습니다.".format(self.weight, self.weight + 1))
        self.weight += 1

guest_1 = People("OWEN", 23, 80)
guest_2 = People("JOLLY", 19, 52)

print("이름 : {0}, 나이 : {1}, 몸무게 : {2}".format(guest_1.name, guest_1.age, guest_1.weight))

guest_1.adult = True
if guest_1.adult == True:
    print("{0}은 성인입니다.".format(guest_1.name))

guest_1.eat("치킨")
print(guest_1.weight)

클래스안에 메소드를 생성하여서 실행해보았습니다.

출력결과
OWEN이 입장하였습니다.
나이는 23, 몸무게는 80 입니다.
JOLLY이 입장하였습니다.
나이는 19, 몸무게는 52 입니다.
이름 : OWEN, 나이 : 23, 몸무게 : 80
OWEN은 성인입니다.
OWEN이 치킨을 먹습니다.
몸무게가 80에서 81로 증가되었습니다.
81

'Python' 카테고리의 다른 글

[파이썬] 메소드 오버라이딩  (0) 2020.09.15
[파이썬] 상속, 다중 상속  (0) 2020.09.15
[파이썬] with  (0) 2020.09.15
[파이썬] pickle  (0) 2020.09.13
[파이썬] 파일 입출력  (0) 2020.09.11

검색 태그