<클래스 관련 강의 확인하며 정리하기>
클래스에서의 함수는 method라 부른다.
그리고 그 모든 메서드의 첫 번째 인자는 그 메서드를 호출한 인스턴스다.(self)
클래스 init 속성 내에서 keyword 인자는 .get을 이용하여 값을 가져온다.
self.color = kwargs.get("color", "black") # 기본 지정 값
super().__init()
class Person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
def greeting(self):
print(f"안녕하세요. 저는 {self.name}이고 {self.age}살이며 {self.gender}입니다.")
Eric = Person("Eric", "30", "남성")
Eric.greeting()
print("이름 :", Eric.name)
print("나이 :", Eric.age)
print("성별 :", Eric.gender)
>>>안녕하세요. 저는 Eric이고 30살이며 남성입니다.
이름 : Eric
나이 : 30
성별 : 남성
class Person:
def __init__(self, name, age, gender, wallet):
self.name = name
self.age = age
self.gender = gender
self.__wallet = wallet
def greeting(self):
print(f"안녕하세요. 저는 {self.name}이고 {self.age}살이며 {self.gender}입니다.")
def pay(self, amount):
self.__wallet -= amount
print(f"잔고가 {self.__wallet} 남았어요.")
Eric = Person("Eric", "30", "남성", 20000)
Eric.greeting()
Eric.pay(17000)
print("이름 :", Eric.name)
print("나이 :", Eric.age)
print("성별 :", Eric.gender)
>>>안녕하세요. 저는 Eric이고 30살이며 남성입니다.
잔고가 3000 남았어요.
이름 : Eric
나이 : 30
성별 : 남성
즉, 중요한 값인데 바깥에서 함부로 바꾸면 안될 때 비공개 속성을 주로 사용
__init__ 하지 않고) #어렵다. 일단 이해한 수준까지만 하고 다음에 다시 보자.