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를 반환하는 함수
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를 반환하는 함수
댓글
댓글 쓰기