1. any()
any는 반복 가능한 자료형을 파라미터로 받으며, 이 파라미터 중에 하나라도 True면 True를 반환한다. 만약 모두 False라면 False를 반환하는 함수이다. OR연산과 비슷한 성격을 갖고 있다.
아래는 True를 반환하는 예이다. 두 번째 예시를 보면 0, False는 거짓이지만 1이 참이기 때문에 True를 리턴하는 것을 확인할 수 있다.
any([1,2,3,4,5]) # True 반환
any([0, False, 1]) # True 반환
0, ""(빈 문자열), [](빈 배열) 모두 False를 의미하기에 모두 False를 반환한다.
any([0, False, 0]) # False 반환
any([]) # False 반환
any(["", 0]) # False 반환
generator object 또한 any에서 사용될 수 있다.
any(i for i in range(10)) # True 반환
그냥 int형이나 bool형 변수를 넣으면 오류가 발생할 수 있으므로 주의하자.
any(1)
>> TypeError: 'int' object is not iterable
any(False)
>> TypeError: 'bool' object is not iterable
2. all()
all 또한 반복가능한 자료형을 파라미터로 받으며 모두 참이면 True, 하나라도 False라면 False를 반환한다.
AND 연산과 비슷한 성격을 가지고 있다.
아래는 True를 반환하는 예이다. any와 같은 예시이나 두 번째 예시가 False가 반환되는 것을 확인할 수 있다.
all([1,2,3,4,5]) # True 반환
all([0, False, 1]) # False 반환
0, ""(빈 문자열), [](빈 배열) 모두 False를 의미하기에 모두 False를 반환한다.
all([0, False, 0]) # False 반환
all([]) # False 반환
all(["", 0]) # False 반환
generator object 또한 all에서 사용될 수 있다. any와는 다르게 False가 출력되는데 아래 제너레이터에 0이 하나 포함되어 있기때문에 False가 반환된 것이다.
all(i for i in range(10)) # False 반환
그냥 int형이나 bool형 변수를 넣으면 오류가 발생할 수 있으므로 주의하자.
all(1)
>> TypeError: 'int' object is not iterable
all(False)
>> TypeError: 'bool' object is not iterable
**참고할만한 자료
점프 투 파이썬: 내장함수 정리