bool(x) chuyển đổi giá trị x thành giá trị Boolean (True hoặc False) theo quy tắc Truth Value Testing của Python.
Giá trị trả về False (Falsy values)
NoneFalse- Số 0:
0,0.0,0j,Decimal(0),Fraction(0,1) - Sequence rỗng:
'',(),[],range(0) - Mapping rỗng:
{} - Đối tượng class có
__bool__()trả vềFalsehoặc__len__()trả về0
Tất cả giá trị khác đều trả về True (Truthy).
Ví dụ minh họa
print("None:", bool(None)) # False
print("True:", bool(True)) # True
print("Zero:", bool(0)) # False
print("Biểu thức True (0==18/3):", bool(0 == 18/3)) # False (0 == 6.0 -> False)
print("Biểu thức False (0==18%3):", bool(0 == 18%3)) # True (0 == 0 -> True)
print("Tuple rỗng:", bool(())) # False
print("Dict rỗng:", bool({})) # False
print("Chuỗi không rỗng:", bool('Tutorial')) # True
Kết quả
None: False True: True Zero: False Biểu thức True (0==18/3): False Biểu thức False (0==18%3): True Tuple rỗng: False Dict rỗng: False Chuỗi không rỗng: True
Ứng dụng thực tế
# Kiểm tra list rỗng
my_list = []
if my_list: # Tương đương bool(my_list)
print("List có phần tử")
else:
print("List rỗng")
# Toán tử ternary
status = "Active" if user_count else "Inactive"
Kết luận
Hiểu rõ Truthiness giúp viết code Python gọn gàng, pythonic hơn. bool() ít khi gọi trực tiếp, thường dùng ngầm trong if, while, toán tử logic.