프로그래밍 언어

    파이썬 floor, ceil 메소드 구현

    파이썬 floor, ceil 메소드 구현

    def floor(v): return v//1 def ceil(v): return -((-v)//1)

    파이썬 클래스 상속

    파이썬 클래스 상속

    1. super() 는 Parent() 를 의미한다. 2. 다중상속에서 super()는 가장 왼쪽에 선언된 부모 클래스를 의미한다. 여러 부모 클래스에 같은 이름의 메소드가 여러 번 정의된 경우에도 가장 왼쪽에 선언된 부모 클래스의 메소드를 참조한다. (참고로, Child.mro() 하면 메소드 탐색 순서(Method Resolution Order)를 알 수 있다.) 3. 하지만, 다중상속은 죽음의 다이아몬드가 만들어질 수도 있는 등 여러 문제가 있어 가급적 피하는게 좋다. 4. 추상클래스는 약간 이데아 느낌. 자식클래스에서 반드시 정의해야 할 메소드를 정해줄 때 사용 from abc import * class AbstractStudent(metaclass=ABCMeta): @abstractmethod ..

    파이썬 클래스/인스턴스 요약

    인스턴스 메소드 - 데코레이터를 사용하지 않고 정의 - 인스턴스를 통해서만 호출 가능 (e.g. person = Person(); person.instance_method()) - self.func() : 인스턴스 메소드 접근 - self.value : 인스턴스 속성 접근 - self.func() or 클래스명.func() : 클래스 메소드 접근 (가독성을 위해 후자가 권장됨) - self.value or 클래스명.value : 클래스 속성 접근 (가독성을 위해 후자가 권장됨) 정적 메소드 - 데코레이터 @staticmethod 를 사용해 정의 - 인스턴스 없이 호출 가능 (e.g. Person.static_method()) - 클래스명.func() : 클래스/정적 메소드 접근 - 클래스명.value :..