파이썬의 최상위 클래스는 object이고, 클래스 정의 시 상속 하지 않아도 이 클래스를 기본으로 상속 I. 클래스 내부 속성 object 클래스는 스페셜 속성과 스페셜 메소드만으로 구성 특별한 기능은 없으며 속성이 없는 객체 생성 역할 [예제] 내부 속성 확인 list_array = [str, int, list, tuple, type(None), object, type] for i in dir(object) : if (type(object.__getattribute__(object, i))
I. 예약어로 관리되는 객체 가. None 객체 아무것도 없는 객체를 나타내는 예약어로 None 객체가 있음 [예제] None 객체 확인 print(type(None)) # None 객체 생성 클래스 print(None.__bool__()) # None 객체는 항상 False print(bool(None)) [결과] <class 'NoneType'> False False 나. bool 클래스의 객체 True/False는 예약어로, 내장 클래스 bool로 생성된 2개의 객체가 할당 [예제] bool 클래스 확인 #
I. 클래스와 객체의 관계 가. 클래스 정의 클래스로 객체를 만들어 관계 확인 [예제] 클래스 정의 class MyClass(object) : pass print(issubclass(MyClass, object)) # 클래스와 최상위 클래스 객체 상속 관계 print(issubclass(MyClass, type)) # 클래스와 메타클래스 상속 관계 print(isinstance(MyClass, type)) # 클래스는 메타클래스로 생성 [결과] True False True 나. 클래스와 객체 관계 확인 파이썬의 모든 클래스는 메타클래스로 생성되며,
I. 리터럴(Literal) 표기법 가. 상수(Constant) 사용법 파이썬에서 상수를 지정하는 방법은 없고, 변수 지정 후 해당 변수의 값을 변경하지 않고 써야 한다. 임의의 상수를 정의할 때, 변수 이름을 모두 대문자로 써서 상수라는 것을 표시 나. 리터럴 표기법 수식이나 글자로 텍스트를 작성하는 방식을 그대로 접목한 것을 리터럴 표기법이라고 한다. [예제] 리터럴 표기법 print(1) [결과] 1 II.