2019.04.03 - [Python.Iterable] Aggregator

오늘 학습한 내용

1. aggregator란 무엇인가?

- iterable을 iterate하며 각각의 element를 고려하고 결과적으로 한 개의 값을 return하는 함수.
- 쉽게 말해 min, max, sum 함수가 그러하다

2. Python의 모든 Object는 bool값이 있다.

3. 그 중 Bool값이 True가 아닌 항목들

- None
- False
- 0 in any numeric
- empty mapping types (빈 list, tuple, set등...)
- custom classes that implement a __bool__ or __len__ method that returns False or 0
(custom class에 bool, len 매직메소드가 모두 정의되어 있으면 bool을 우선한다. 만약 bool이 없다면 len을 호출한다)

이 외에는 기본적으로 True값을 갖는다.

좀 신기한 경우가 있는데 다 써버린 generator를 bool로 랩핑하면 False이어야 할 것 같지만 True다.

아무런 시그니처도 없는 Class의 인스턴스도 마찬가지이다.

4. predicate란 무엇인가

- 하나의 arg를 받고 True or False를 반환하는 함수

댓글

이 블로그의 인기 게시물

로컬 Tomcat 서버 실행속도 개선

2019.05.23 - SQLAlchemy 의 객체 상태 관리 (expire, refresh, flush, commit) 에 관한 이해

2020.02.17 Python의 multiprocessing 중 Pool.map(), chunksize에 관한 내용