Boolean Functions in Python
bool()
The bool() function converts a value to a boolean (True or False). It’s useful for checking the truthiness of a value in different contexts.
- Syntax: bool([value])
- Returns: True or False
Examples:
print(bool(None)) # Outputs: False print(bool(0)) # Outputs: False print(bool("")) # Outputs: False print(bool([])) # Outputs: False print(bool(1)) # Outputs: True print(bool("hello")) # Outputs: True print(bool([1, 2, 3])) # Outputs: True
all()
The all() function returns True if all elements of an iterable are true (or if the iterable is empty). Otherwise, it returns False.
- Syntax: all(iterable)
- Returns: True if all elements are true or if the iterable is empty; otherwise, False.
Examples:
print(all([True, True, True])) # Outputs: True print(all([True, False, True])) # Outputs: False print(all([])) # Outputs: True (empty iterable) # Example with a condition numbers = [1, 2, 3, 4] print(all(num > 0 for num in numbers)) # Outputs: True print(all(num > 2 for num in numbers)) # Outputs: False
any()
The any() function returns True if at least one element of an iterable is true. If the iterable is empty, it returns False.
- Syntax: any(iterable)
- Returns: True if at least one element is true; otherwise, False.
Examples:
print(any([False, False, True])) # Outputs: True print(any([False, False, False])) # Outputs: False print(any([])) # Outputs: False (empty iterable) # Example with a condition numbers = [0, 0, 1] print(any(num > 0 for num in numbers)) # Outputs: True print(any(num > 2 for num in numbers)) # Outputs: False
isinstance()
The isinstance() function checks if an object is an instance of a class or a tuple of classes.
- Syntax: isinstance(object, class) or isinstance(object, (class1, class2, …))
- Returns: True if the object is an instance of the class or classes specified; otherwise, False.
Examples:
print(isinstance(5, int)) # Outputs: True print(isinstance(5.0, float)) # Outputs: True print(isinstance("hello", str)) # Outputs: True print(isinstance([1, 2, 3], list)) # Outputs: True print(isinstance(5, (int, float))) # Outputs: True print(isinstance(5, (str, list))) # Outputs: False
issubclass()
The issubclass() function checks if a class is a subclass of another class (or a tuple of classes).
- Syntax: issubclass(class, superclass)
- Returns: True if the class is a subclass of the superclass; otherwise, False.
Examples:
class Animal: pass class Dog(Animal): pass class Cat(Animal): pass print(issubclass(Dog, Animal)) # Outputs: True print(issubclass(Cat, Animal)) # Outputs: True print(issubclass(Dog, Cat)) # Outputs: False
callable()
The callable() function checks if an object can be called like a function (i.e., if it is callable).
- Syntax: callable(object)
- Returns: True if the object is callable (function, method, object with __call__), otherwise False.
Examples:
def func(): pass class CallableClass: def __call__(self): pass print(callable(func)) # Outputs: True print(callable(CallableClass)) # Outputs: True print(callable(CallableClass())) # Outputs: True (instance of CallableClass is callable) print(callable(5)) # Outputs: False print(callable("text")) # Outputs: False
filter()
The filter() function applies a filtering function to each element of an iterable and returns an iterable containing only the elements for which the function returns True.
- Syntax: filter(function, iterable)
- Returns: An iterable containing elements for which the function returns True.
Examples:
def is_even(x): return x % 2 == 0 numbers = [1, 2, 3, 4, 5] even_numbers = filter(is_even, numbers) print(list(even_numbers)) # Outputs: [2, 4] # Using lambda even_numbers = filter(lambda x: x % 2 == 0, numbers) print(list(even_numbers)) # Outputs: [2, 4]
all() and any() with Conditions
You can use all() and any() with generator expressions to test more complex conditions.
Examples:
# Check if all elements in a list are positive positive_numbers = [1, 2, 3, 4] result = all(x > 0 for x in positive_numbers) print(result) # Outputs: True # Check if at least one element in a list is negative numbers = [1, -2, 3, 4] result = any(x < 0 for x in numbers) print(result) # Outputs: True