Trong bài học này chúng ta sẽ xem xét chí tiết cách sử dụng kiểu dữ liệu bool trong Python. Đây là một kiểu dữ liệu đơn giản nhưng rất quan trọng để chuyển sang học về các cấu trúc điều khiển (if-elif-else, while, for) trong Python. Nội dung chính Show Kiểu bool trong PythonKiểu bool (Boolean) trong Python là kiểu dữ liệu trong đó chỉ có hai giá trị >>> a = True >>> type(a) # hàm cho biết kiểu của biến <class 'bool'> >>> b = False >>> type(b) <class 'bool'> Nếu bạn đã học một ngôn ngữ trong họ C cần lưu ý giá trị là True/False (T và F phải viết hoa). Viết true/false là sai và sẽ bị báo lỗi như sau: >>> a = true # Python sẽ hiểu true là một biến (vốn chưa tồn tại) Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'true' is not defined Kiểu bool là kiểu kết quả trả về của các phép so sánh trên số và chuỗi mà bạn đã học trong các bài trước: >>> a = 10; b = 5 >>> a > b True >>> a <= b False >>> a != b True >>> a == b False >>> 0 < b < a < 11 # Python cho phép viết như thế này True >>> a = 'Hello'; b = 'Python' >>> a != b True >>> a > b False >>> a < b True >>> a == b False >>> Một số phương thức của str cũng trả về giá trị bool: >>> my_string = "Hello World" >>> my_string.isalnum() #kiểm tra xem chuỗi có chứa toàn chữ số False >>> my_string.isalpha() # chuỗi chứa toàn chữ cái False >>> my_string.isdigit() # chuỗi có chứa chứ số False >>> my_string.isupper() # chuỗi chứa toàn ký tự hoa False >>> my_string.islower() # chuỗi chứa toàn kỹ tự thường False >>> my_string.isspace() # chuỗi chỉ chứa khoảng tráng False >>> my_string.endswith('d') # kết thúc là d True >>> my_string.startswith('H') # bắt đầu là H True Chuyển đổi kiểu dữ liệu về boolPython cho phép chuyển đổi giữa các kiểu dữ liệu khác và bool qua hàm bool() theo quy tắc sau:
>>> zero_int = 0 >>> bool(zero_int) False >>> pos_int = 1 >>> bool(pos_int) True >>> neg_flt = -5.1 >>> bool(neg_flt) True >>> ans = 'true' >>> bool(ans) True >>> ans = 'hello' >>> bool(ans) True >>> ans = '' # chuỗi rỗng (không có ký tự nào) >>> bool(ans) False >>> ans = ' ' # chuỗi này chứa 1 dấu cách >>> bool(ans) True Python cũng có thể chuyển đổi giá trị của các kiểu khác về bool. Ví dụ danh sách rỗng -> False, danh sách có phần tử -> True. Chúng ta sẽ học về các kiểu dữ liệu này sau. Các phép toán trên kiểu boolCác phép toán trên kiểu bool, còn được gọi là số học Boolean, là các phép toán logic chỉ trả về kết quả True hoặc False. Các phép toán thông dụng nhất bao gồm >>> a = true # Python sẽ hiểu true là một biến (vốn chưa tồn tại) Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'true' is not defined1, >>> a = true # Python sẽ hiểu true là một biến (vốn chưa tồn tại) Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'true' is not defined2, >>> a = true # Python sẽ hiểu true là một biến (vốn chưa tồn tại) Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'true' is not defined3, >>> a = true # Python sẽ hiểu true là một biến (vốn chưa tồn tại) Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'true' is not defined4 và >>> a = true # Python sẽ hiểu true là một biến (vốn chưa tồn tại) Traceback (most recent call last): File "<input>", line 1, in <module> NameError: name 'true' is not defined5. >>> A = True >>> B = False >>> A or B True >>> A and B False >>> not A False >>> not B True >>> A == B False >>> A != B TrueABnot Anot BA == BA =! BA or BA and BTFFTFTTFFTTFFTTFTTFFTFTTFFTTTFFBảng chân trị của các phép toán logic Boolean Bạn có thể ghép các phép toán trên để tạo thành biểu thức phức tạp hơn như sau: >>> A = True >>> B = False >>> C = False >>> A or (C and B) True >>> (A and B) or C False Kết luậnTrong bài học này chúng ta đã xem xét chí tiết cách sử dụng kiểu dữ liệu bool trong Python. Đây là một kiểu dữ liệu đơn giản nhưng rất quan trọng để chuyển sang học về các cấu trúc điều khiển (if-elif-else, while, for) trong Python. |