-
class 사용하기Python 2020. 9. 28. 11:00반응형
class와 메서드 선언
class 클래스이름: #객체를 통해 사용할 수 있는 메서드 def 메서드이름1(self): 실행코드 #클래스를 통해 사용할 수 있는 메서드 @staticmethod def 메서드이름2(매개변수1, 매개변수2 ...): 실행코드 #만약 내용없는 class를 선언하고자 한다면 다른 내용 대신 pass를 입력
class의 속성 추가
# class 선언 시 속성 추가 class 클래스이름: 속성이름8 = 값 # 클래스 속성. 이 클래스로 만들어진 모든 객체가 공유하는 속성이다. __속성이름9 = 값 # __으로 시작하는 속성명은 java의 private 속성과 같다. __slot__=['속성이름5', '속성이름6'] """ 객체를 생성할 때 자동으로 호출되는 __init__ 메서드는 Java의 생성자와 같이 객체의 상태를 초기화 하는데 사용된다. 앞, 뒤로 __가 붙은 메서드는 스페셜 메서드 또는 매직 메서드라고 부르며 파이썬에서 자동으로 호출해주는 메서드이다. self는 클래스로 생성한 객체를 의미한다. """ def __init__(self, 매개변수1, 매개변수2): self.속성이름1 = 값 self.__속성이름2 = 값 # 속성이름 앞에 __를 붙이면 java의 private 키워드와 같다. self.속성이름3 = 매개변수1 self.속성이름4 = 매개변수2 # 생성된 객체에 속성 추가 객체이름 = 클래스이름() 객체이름.속성이름5 = 값 객체이름.속성이름6 = 값 # __slot__ 이 선언되어 있기 때문에 __slot__ 안에 문자열 형태로 지정되지 않은 속성이름은 추가할 수 없다. 객체이름.속성이름7 = 값
속성은 클래스 속성과 객체 속성이 있다. 클래스 속성이 java의 static 멤버와 동일한 개념이다. 즉 여러 객체에의 해 공유되는 멤버변수가 되겠다.
객체의 생성과 인스턴스 메서드 호출
객체이름 = 클래스이름() 객체이름.메서드이름()
객체의 class 확인
type(객체명)
'Python' 카테고리의 다른 글
유용한 표준 라이브러리 (0) 2020.12.24 Python 기본 정렬과 커스텀 정렬 (0) 2020.12.24 문자열 뒤집기 (0) 2020.12.21 2차원 리스트 초기화 시 주의할 점 (0) 2020.10.12 console 입출력과 형변환 (0) 2020.10.08