ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 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

    댓글

Designed by Tistory.