본문 바로가기
반응형
[python] assert를 통해 가정 점검하기 assert assert라는 함수는 인자로 받는 조건이 true가 아니면 예외를 발생시키는 함수로, 보통 디버깅을 도와주거나, 코드의 가독성을 올리는 용도로 쓰인다.쉽게 이야기해보면 코드를 작성할 때 assert 이하에서 조건문이 현재상황에서 만족하는 지 확인하는 용도로 많이 사용된다고 보면 된다. 해당 조건을 만족하지 않을 시에는 asserterror가 발생한다. 기본 assert format assert 조건문, (true 시)출력할 메세지 예시 + 정리 msg_no_cfg = "Configuration file need to be specified. Add '-c config.json', for example." assert args.config is not None, msg_no_cfg 다음의 예.. 2023. 7. 11.
[python] 정적메서드 @classmethod @staticmethod method? Class 내에서 객체가 구현할 특정한 기능을 함수 형태로 정의하는 것을 method라고 받아들일 때, 해당 method가 절자지향적인 역학을 수행할 때 해당 역학을 이용하여 별도의 class instance 생성없이 메모리에 올라와있는 해당 method를 사용할 수 있을 때, 이를 staticmethod라고 한다. instance method와의 차이는 비교하고자 하는 method가 어떻게 메모리에 올라오는 지의 차이에 있다. instance method의 경우에는 class의 instance가 정의되면서 해당 instance를 컴파일하는 과정에서 memory의 static한 공간에 method의 주소가 호출되는 형태로 이해하면 좋을 것 같다. 반면에 staticmethod 경우는 별도 .. 2023. 7. 11.
[python] collections-namedtuple() (cf. tuple) namedtuple() collections.namedtuple()은 일반적인 tuple과 다음의 차이를 보인다. 아래에서 구현해놓은 차이를 비교해보고 어떤 차이가 있는지 이해해보자. # 일반적인 tuple() """ offset을 통해 데이터에 접근할 수 있다. """ fruit = tuple(170, 70) # namedtuple() """ keys같이 정의된 값을 통해 데이터에 접근할 수 있다. ㄴ 구분방법 1: '필드명 필드명' ㄴ 구분방법 2: '필드명, 필드명' ㄴ 구분방법 3: ['필드명', '필드명'] """ fruit = namedtuple('fruit', 'height, weight') sampleFruit = fruit(height=170, weight=70) 위 코드를 살펴보면, t.. 2023. 7. 10.
[Python] 조건 중첩 표기 조건중첩 : A 2022. 12. 11.
반응형