[파이썬] any()와 all()

2022. 3. 21. 10:00·Python

 

 

 

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

 

 

 

 

**참고할만한 자료

점프 투 파이썬: 내장함수 정리

'Python' 카테고리의 다른 글
  • [파이썬] Numpy 정리
  • [파이썬] heapq 힙큐 사용하기
  • [파이썬] 파이썬 기초 요약
  • [파이썬] 배열에 사용되는 함수
gakko
gakko
좌충우돌 개발기
  • gakko
    MYVELOP 마이벨롭
    gakko
  • 전체
    오늘
    어제
    • 분류 전체보기 (214)
      • 끄적끄적 (6)
      • Spring (21)
      • Java (3)
      • NestJS (1)
      • Redis (3)
      • RabbitMQ (0)
      • Test (3)
      • 대외활동 (36)
        • 부스트캠프 (23)
        • IT커뮤니티 (5)
        • 글또 (5)
        • 컨퍼런스 (3)
      • Infra (5)
        • Docker (1)
        • Jenkins (1)
        • AWS (1)
      • CS (26)
        • 자료구조 (13)
        • 운영체제 OS (12)
        • 데이터베이스 (1)
      • MySQL (7)
      • Git & GitHub (16)
        • Git (12)
        • Github Actions (1)
        • 기타(마크다운 등) (3)
      • 프로젝트 (2)
      • 리눅스 (6)
        • 기초 (6)
        • 리눅스 서버 구축하기 (0)
      • 후기 (3)
        • Udemy 리뷰 (3)
      • Python (12)
      • 레거시모음 (64)
        • 스프링 (11)
        • 자바 클래스&메소드 (1)
        • 오류해결 (18)
        • JSP & Servlet (12)
        • 자바스크립트 기초 (3)
        • React (2)
        • 이클립스 (1)
        • 알고리즘 문제풀이 (16)
      • 디자인패턴 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 우진님
  • 공지사항

  • 인기 글

  • 태그

    스프링부트
    jsp
    자바
    운영체제
    os
    Git
    스프링
    부스트캠프
    GitHub
    MySQL
    웹개발
    자바스크립트
    오류해결
    알고리즘
    파이썬
    Spring
    부스트캠프 멤버십
    부스트캠프 7기
    java
    Python
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.0
gakko
[파이썬] any()와 all()
상단으로

티스토리툴바