CodeGym /Các khóa học /Python SELF VI /Làm việc với kiểu boolean

Làm việc với kiểu boolean

Python SELF VI
Mức độ , Bài học
Có sẵn

5.1 Kiểu bool

Trong Python có một kiểu dữ liệu logic đặc biệt, giúp kiểm tra tính đúng đắn của điều kiện và biểu thức. Nó được biểu diễn bằng từ khóa bool (mặc dù thực chất gọi là Boolean) và được dùng để biểu diễn một trong hai giá trị: True (Đúng) hoặc False (Sai).

Kiểu dữ liệu này cực kỳ hữu ích trong lập trình để điều khiển thứ tự thực hiện chương trình thông qua các câu lệnh điều kiện như if, elseelif, cũng như điều khiển vòng lặp và các cấu trúc điều khiển khác.

Lưu ý quan trọng

Kiểu dữ liệu logic trong Python được biểu diễn bằng hai đối tượng hằng: TrueFalse. Tuy nhiên, cần lưu ý rằng Python nhận diện True như giá trị số 1 và False như 0. Điều này cho phép sử dụng chúng trong các phép toán số học và làm cho kiểu bool là một lớp con của kiểu int.

Ứng dụng thực tiễn

Mặc dù chỉ có hai giá trị có thể có, kiểu bool không mạnh nhờ vào giá trị của nó, mà nhờ bộ các phép toán logic có thể thực hiện trên chúng. Chi tiết về điều đó sẽ được nói dưới đây.

5.2 Toán tử logic

Các phép toán logic trong Python đóng vai trò quan trọng trong việc điều khiển thứ tự thực hiện chương trình và đưa ra quyết định. Các phép toán logic cơ bản bao gồm and, ornot. Hiểu rõ cách áp dụng chúng có thể cải thiện đáng kể hiệu suất của mã nguồn.

Logic AND (AND)

Toán tử and trả về True chỉ khi cả hai đối tượng của nó đều là True. Toán tử này thường được sử dụng để kiểm tra tính đúng đắn của nhiều điều kiện cùng lúc.


a = True
b = False
print(a and b)  # Sẽ in ra: False 

Logic OR (OR)

Toán tử or trả về True nếu ít nhất một trong các đối tượng của nó là True. Điều này hữu ích cho các điều kiện mà mã cần tiếp tục thực hiện khi ít nhất một trong các điều kiện có thể xảy ra.


a = True
b = False
print(a or b)  # Sẽ in ra: True

Logic NOT (NOT)

Toán tử not đảo ngược giá trị boolean của đối tượng của nó. Nếu đối tượng True, kết quả sẽ là False và ngược lại. Điều này có thể hữu ích để tạo ra các điều kiện phủ định.


a = True
print(not a)  # Sẽ in ra: False

Sử dụng nâng cao

Toán tử logic thường được sử dụng kết hợp để tạo ra các biểu thức điều kiện phức tạp, giúp điều khiển luồng thực hiện phức tạp hơn.


a = 5
b = 10
c = 20
result = a < b and b < c  # Kiểm tra rằng a nhỏ hơn b và b nhỏ hơn c
print(result)  # Sẽ in ra: True

Các phép toán logic trong Python cung cấp một công cụ mạnh mẽ để điều khiển hành vi chương trình dựa trên các điều kiện khác nhau. Chúng không chỉ đơn giản hóa việc viết mã mà còn làm cho nó dễ đọc và bảo trì hơn.

5.3 Ví dụ thực tế

Python cho phép chuyển đổi các kiểu dữ liệu khác sang kiểu boolean bằng hàm bool(). Theo mặc định, bất kỳ giá trị nào không phải zero hoặc không rỗng sẽ được chuyển đổi thành True, trong khi các giá trị zero hoặc rỗng sẽ thành False.

Ví dụ về chuyển đổi kiểu:


print(bool(0))  # Sẽ in ra False 
print(bool(42))  # Sẽ in ra True
print(bool(""))  # Sẽ in ra False
print(bool("Text"))  # Sẽ in ra True

Sử dụng biến logic trong điều kiện:


a = 5
b = 10
c = 20
is_a_min = a < b and a < c  # Kiểm tra rằng a nhỏ hơn b và a nhỏ hơn c 
print(is_a_min)  # Sẽ in ra: True

Không cần so sánh biến logic với True hoặc False, vì kết quả của so sánh đã là True hoặc False. Ví dụ:

Mã khởi đầu Mã khởi đầu đặt vào biến riêng biệt Bỏ == True

if a < b:
    print("a là nhỏ nhất")

                    is_a_less = a < b
                    if is_a_less == True:
                        print("a là nhỏ nhất")              
                

                    is_a_less = a < b
                    if is_a_less:
                        print("a là nhỏ nhất")               
                

Kết quả của bất kỳ phép so sánh nào có giá trị là True hoặc False, vì vậy có thể gán nó vào một biến – như đã làm trong ví dụ trên. Nhưng trong điều kiện if, hoặc vòng lặp while, không cần so sánh biến logic với True. Biến logic đã chứa giá trị đúng. Chỉ cần đặt cho nó một tên hợp lý, và mọi thứ sẽ trở nên rõ ràng.

Nói cách khác, thay vì viết mã «if a == True:» chỉ cần viết «if a:». Và thay vì mã «if a == False:» thì viết «if not a:».

Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION