bool형 배열pythonPython bool()

5535 단어
bool형 배열python
Python bool() function returns Boolean value for an object. The bool class has only two instances – True and False. This class can’t be extended.
Python bool() 함수는 객체의 부울 값을 반환합니다.bool 클래스에는 두 개의 인스턴스(True 및 False)만 있습니다.이 유형은 확장할 수 없습니다.

Python bool() (Python bool())


Python bool() function uses standard truth testing rules to convert the specified argument object to Boolean value.
Python bool() 함수는 표준 실제 값 테스트 규칙을 사용하여 지정된 매개변수 객체를 부울 값으로 변환합니다.
Some of the rules used to return Boolean value are:
부울 값을 반환하는 데 사용되는 몇 가지 규칙은 다음과 같습니다.
  • Any object Boolean value is considered true if it’s not implementing __bool__() function and __len__() functions. 이(가) 구현되지 않은 경우bool __() 함수 및len __() 함수는 모든 객체의 부울 값을true로 간주합니다.
  • If the object doesn’t define __bool__() function but defines __len__() function, then __len__() function is used to get the boolean value of object. If __len__() returns 0, then bool() function will return False otherwise True. 객체가 정의되지 않은 경우bool __() 함수 대신 정의len __() 함수는 을 사용합니다.len __() 함수는 객체의 부울 값을 가져옵니다.만약len __()가 0을 반환하면 bool() 함수는 False를 반환하고 그렇지 않으면 True를 반환합니다.
  • Boolean value will be False for None and False constants. NoneFalse의 상수에 대해 볼 값은 False가 될 것이다.
  • Boolean value will be False for zero value numbers such as 0, 0.0, 0j, Decimal(0), and Fraction(0, 1). 0, 0.0, 0j, Decimal(0) 및 Fraction(0, 1)과 같은 0값 숫자의 경우 부울 값은 False가 됩니다.
  • Boolean value will be False for empty sequences(tuple, dict) and collections, such as", (), [], {} etc. 빈 시퀀스(tuple, dict)와 집합(예를 들어), (), [], {} 등)에 대해 부울 값은 False가 됩니다.

  • Python bool () 예 (Python bool () example)


    Let’s look at some simple examples of bool() with bool instances and None.
    bool 인스턴스와 None이 있는 bool()의 간단한 예를 살펴보겠습니다.
    x = True
    b = bool(x)
    
    print(type(x))  # 
    print(type(b))  # 
    print(b)  # True
    
    x = False
    b = bool(x)
    print(b)  # False
    
    x = None
    b = bool(x)
    
    print(type(x))  # 
    print(type(b))  # 
    print(b)  # False

    The output is self-explained and provided in the comments.
    출력은 자명하고 주석에 제공된다.

    문자열이 있는 Python bool () (Python bool () with strings)

    # string examples
    x = 'True'
    b = bool(x)
    
    print(type(x))  # 
    print(type(b))  # 
    print(b)  # True
    
    x = 'False'
    b = bool(x)
    print(b)  # True because len() is used
    
    x = ''
    print(bool(x))  # False, len() returns 0

    숫자가 있는 Python bool () (Python bool () with numbers)

    from fractions import Fraction
    from decimal import Decimal
    
    print(bool(10))  # True
    print(bool(10.55))  # True
    print(bool(0xF))  # True
    print(bool(10 - 4j))  # True
    
    print(bool(0))  # False
    print(bool(0.0))  # False
    print(bool(0j))  # False
    print(bool(Decimal(0)))  # False
    print(bool(Fraction(0, 2)))  # False

    컬렉션과 시퀀스가 있는 Python bool() 함수(Python bool () function with collections and sequences)

    tuple1 = ()
    dict1 = {}
    list1 = []
    print(bool(tuple1))  # False
    print(bool(dict1))  # False
    print(bool(list1))  # False

    사용자 정의 객체가 있는 Python bool() 함수(Python bool() function with custom object)


    Let’s see what happens with custom object. I will not define __bool__() and __len__() functions for the object.
    사용자 정의 대상에게 무슨 일이 일어날지 봅시다.나는 이 대상에 대해 을 정의하지 않을 것이다bool __() 및len __() 함수.
    class Data:
        id = 0
    
        def __init__(self, i):
            self.id = i
    
    d = Data(0)
    print(bool(d))
    d = Data(10)
    print(bool(d))

    Output:
    출력:
    True
    True

    Since none of __bool__() and __len__() functions are defined, object boolean value is returned as True.
    정의되지 않았기 때문에bool __() 및len __() 함수. 따라서 객체 부울 값이 True로 반환됩니다.
    Let’s add __len__() function to the Data class.
    Data 클래스에 추가len __() 함수.
    # returns 0 for id <= 0, else id
        def __len__(self):
            print('len function called')
            if self.id > 0:
                return self.id
            else:
                return 0

    Output:
    출력:
    len function called
    False
    len function called
    True

    It’s clear that __len__() function is called by bool(). When 0 is returned, bool() function is returning False. When positive integer is returned, then bool() function is returning True.
    분명len __() 함수는 bool () 을 통해 호출됩니다.0이 반환되면 bool() 함수는 False를 반환합니다.양의 정수를 반환하면 bool() 함수가 True를 반환합니다.
    Now let’s add __bool__() function to Data class:
    이제bool __() 함수를 Data 클래스에 추가하려면:
    # returns True for id > 0 else False
        def __bool__(self):
            print('bool function called')
            return self.id > 0

    Now the above snippet output will be:
    현재 위의 코드 세그먼트 출력은 다음과 같습니다.
    bool function called
    False
    bool function called
    True

    It’s clear from the output that if both __bool__() and __len__() functions are defined for the object, then __bool__() function is used to get the Boolean value of object.
    동시에 객체에 대해 을 정의한 경우 출력에서 분명합니다.bool __() 및len __() 함수는 을 사용할 수 있습니다.bool __() 함수는 객체의 부울 값을 가져옵니다.
    GitHub Repository. GitHub 저장소에서 완전한python 스크립트와 더 많은 Python 예시를 검출합니다.
    Reference: Official Documentation
    참조: 공식 문서
    번역:https://www.journaldev.com/22669/python-bool
    bool형 배열python

    좋은 웹페이지 즐겨찾기