I learned

내일배움캠프 AI - TIL 11

이모냥냥 2022. 9. 14. 19:45
반응형
❤️‍🔥TIL : Today I Learned❤️‍🔥
그날그날 내가 공부한 것을 정리하는 것

 

 

 

내일배움캠프 AI트랙 11Day

 

 

오늘 배운 내용

이창호 튜터님 - python 문법 5일차 

 

Class의 내장 메서드

__init__ : 인스턴스 생성시 자동으로 실행되는 메서드

# class에 __init__메소드를 사용할 경우 인스턴스 생성 시 해당 메소드가 실행된다.
class CookieFrame():
    def __init__(self, name):
        print(f"생성 된 과자의 이름은 {name} 입니다!")
        self.name = name

cookie1 = CookieFrame("cookie1") # 생성 된 과자의 이름은 cookie1 입니다!
cookie2 = CookieFrame("cookie2") # 생성 된 과자의 이름은 cookie2 입니다!

init된 값을 직접 가져와서 사용할 경우, 인스턴스 값이 아니라 인스턴스의 메모리 주소값이 나온다. 인스턴스의 값을 가져올려면 get메서드를 통해서 가져와야한다.

 

__str__ : 클래스 자체의 내용을 출력하고 싶을때, 입력받은 인스턴스의 문자열 표현을 반환하는 함수.

입력받은 문자열을 반환하는 함수인 str()와 유사하다고 보면 된다.

class CookieFrame():
    def __init__(self, name):
        print(f"생성 된 과자의 이름은 {name} 입니다!")
        self.name = name

    def __str__(self):
        return f'{self.name=}'


cookie1 = CookieFrame("cookie1")  # 생성 된 과자의 이름은 cookie1 입니다!
cookie2 = CookieFrame("cookie2")  # 생성 된 과자의 이름은 cookie2 입니다!
print(cookie1) # self.name='cookie1'
print(cookie2) # self.name='cookie2'

 

__repr__ : 어떤 객체의 ‘출력될 수 있는 표현’(printable representation)을 문자열의 형태로 반환

repr은 ‘Representation’의 약자로 이 단어는 ‘표현하다'인데 str처럼 단순 문자열화 하는것이 아니라 객체인데, 그것을  설명하고 이해 할 수 있게 화면에 출력될 수 있는 문자열 등의 형태로 반환하는 것이다.

__repr__와 __str__메소드를 주고 실행하면 내부적으로는 두개가 실행을 하지만 print처럼 출력을 하는 메서드에서는  __str__을 우선적으로 출력한다. 

 

>> __str__와 __repr__ 둘 다 사용

>>__repr__ 만 사용

 

 

 

나름 잘 이해한것같기도하고 아닌것같기도하고~

반응형