-
self 메소드Language/Python 2021. 9. 8. 12:00
self 메소드를 쓰는 방법에 대해서 작성해보려고 한다.
class User(): def info(self, name, email, pwd): self.name = name self.email = email self.pwd = pwd user1 = User() user1.info("Kim", "kim@daum.net", "123456") user2 = User() user2.info("Miyawaki", "miyawaki@daum.net", "abcdef") user3 = User() User.info(user3, "Choi", "choi@daum.net", "123abc") user4 = User() User.info(user4, "Kwon", "kwon@daum.net", "abc123") print(user1.name, user1.email, user1.pwd) print(user2.name, user2.email, user2.pwd) print(user3.name, user3.email, user3.pwd) print(user4.name, user4.email, user4.pwd)
self 를 정의함으로써 클래스 내 정의한 name, email, pwd 에 접근할 수 있도록 한다.
앞선 코드에선 some_user 라고 정의했었는데 보통 def나 클래스에서 맨 첫 번째로 들어가는 건 self 메소드이다. 내가 직접 정해서 초기 메소드를 정할 수도 있지만, 파이썬 정의에선 첫 메소드는 꼭 self 를 쓰기로 정의했다.
class User(): def greet(self): print("Hello, {}!".format(self.name)) def check(self, name): return self.name == name
check 함수 같은 경우에는
파라미터로 받는 name이 user1/2/3/4와 이름이 같은지 boolean으로 리턴하는 메소드를 뜻하는 것이다.