Xác định đúng sai trăn

a = False
1 và
a = False
2 là các giá trị trong Python, cũng như các số và chuỗi. Chúng thuộc loại
a = False
3, nghĩa là boolean. Bạn có thể coi chúng như ý nghĩa, theo nghĩa đen, ý nghĩa chung của chúng ngụ ý gì

Hãy thử gửi mã này tới trình thông dịch Python. Mỗi dòng in kết quả của một biểu thức boolean đánh giá giá trị

a = False
1 hoặc
a = False
2

print 4 < 7
print "eggs" == "spam"
print "Python" == "Python"
print "pa" in "spam"
print 2 ** 8 == 256
print 7 < 4

Boolean là một biến có giá trị Đúng hoặc Sai. Chúng tôi nói kiểu dữ liệu của một biến có thể là boolean. Trong ngữ cảnh số, nó giống như một số có thể là 0 hoặc 1. Trong điện tử, nó cao hoặc thấp

Bạn có thể nghĩ về nó giống như một công tắc đèn, bật hoặc tắt. Nó dựa trên đơn vị nhỏ nhất trong máy tính, một chút. Một bit là một giá trị hoặc là 0 [Sai] hoặc 1 [Đúng]. Bây giờ bạn có thể xem một chút như từ đồng nghĩa của boolean

Khóa học liên quan. Hoàn thành khóa học & bài tập lập trình Python

Giới thiệu

Một giá trị boolean có thể có giá trị Sai hoặc Đúng. Trong nội trang boolean của Python được viết hoa, vì vậy Đúng và Sai

Bạn không cần xác định rõ ràng kiểu dữ liệu thành boolean

Bạn không cần phải nói “Tôi muốn sử dụng một boolean” như bạn cần trong C hoặc Java. Thay vào đó Python biết biến là boolean dựa trên giá trị bạn gán

So sánh mã dưới đây về định nghĩa boolean

# Java
boolean fun = true;

# Python
fun = true

Boolean trong Python

Để xác định một boolean trong Python, bạn chỉ cần gõ

a = False

Điều đó tạo ra một giá trị boolean với tên biến [a] và có giá trị Sai.
Nếu bạn muốn bật, bạn gõ.

a = True

Giá trị của một biến có thể được hiển thị với chức năng in. Nếu bạn sử dụng trình bao Python, bạn chỉ cần nhập tên biến

>>> a = True
>>> print[a]
True
>>> a
True
>>>

Bạn cũng có thể gõ

>>> light = 0
>>> light
0
>>>

Bạn có thể nghĩ rằng đó là một kiểu boolean, nhưng nếu bạn yêu cầu kiểu đó, bạn sẽ nhận được

a = False
0 [số, số nguyên]

>>> type[light]

>>>

Python yêu cầu bạn gọi phương thức

a = False
1 để chuyển đổi một số thành boolean

Nếu bạn là người mới bắt đầu học Python, thì tôi thực sự khuyên bạn nên đọc cuốn sách này

Truyền boolean

Bạn có thể chuyển một giá trị thành boolean bằng cách sử dụng hàm

a = False
1. Nếu bạn truyền một biến, kiểu dữ liệu sẽ bị thay đổi. Trong ví dụ bên dưới, nó chuyển từ kiểu dữ liệu int sang boolean

# Java
boolean fun = true;

# Python
fun = true
0

Bạn có thể xác minh điều này bằng cách gọi phương thức type[], phương thức này trả về kiểu dữ liệu

# Java
boolean fun = true;

# Python
fun = true
1

chuỗi Boolean

Đôi khi các hàm trả về một giá trị boolean. Nếu bạn xác định một chuỗi [văn bản], bạn có thể gọi một số phương thức trên đó, tất cả đều trả về giá trị boolean

Các chương trình trở nên thực sự thú vị khi chúng ta có thể kiểm tra các điều kiện và thay đổi hành vi của chương trình tùy thuộc vào kết quả của các bài kiểm tra. Đó là nội dung của chương này

5. 1. Các giá trị và biểu thức Boolean

Một giá trị Boolean là true hoặc false. Nó được đặt theo tên của nhà toán học người Anh, George Boole, người đầu tiên xây dựng đại số Boolean — một số quy tắc để suy luận và kết hợp các giá trị này. Đây là cơ sở của tất cả logic máy tính hiện đại

Trong Python, hai giá trị Boolean là TrueFalse [the capitalization must be exactly as shown], and the Python type is bool.

# Java
boolean fun = true;

# Python
fun = true
2

Biểu thức Boolean là biểu thức đánh giá để tạo ra kết quả là giá trị Boolean. Ví dụ: toán tử == kiểm tra xem hai giá trị có bằng nhau không. Nó tạo ra [hoặc mang lại] một giá trị Boolean.

# Java
boolean fun = true;

# Python
fun = true
3

Trong câu lệnh đầu tiên, hai toán hạng đánh giá bằng các giá trị bằng nhau, vì vậy biểu thức đánh giá là True ; . False.

Toán tử == là một trong sáu toán tử so sánh phổ biến, tất cả đều tạo ra một boolbool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . bool . result; here are all six:

# Java
boolean fun = true;

# Python
fun = true
4

Mặc dù các thao tác này có thể quen thuộc nhưng các ký hiệu Python khác với các ký hiệu toán học. Một lỗi phổ biến là sử dụng dấu bằng đơn [ = ] thay vì dấu bằng kép [ ==< . Hãy nhớ rằng ]. Remember that = là toán tử gán và == là toán tử so sánh. Ngoài ra, không có điều gì như = .

Giống như bất kỳ loại nào khác mà chúng tôi đã thấy cho đến nay, các giá trị Boolean có thể được gán cho các biến, được in, v.v.

# Java
boolean fun = true;

# Python
fun = true
5

5. 2. Toán tử logic

Có ba toán tử logic, and , or . Ngữ nghĩa [nghĩa] của các toán tử này tương tự như nghĩa của chúng trong tiếng Anh. Ví dụ: not, that allow us to build more complex Boolean expressions from simpler Boolean expressions. The semantics [meaning] of these operators is similar to their meaning in English. For example, x > 0 x y] is True if [x > y] is False, that is, if x is less than or equal to y.

Biểu thức bên trái của toán tử hoặc được đánh giá trước. nếu kết quả là True , Python không [và không cần] đánh giá biểu thức ở bên phải — điều này được gọi là đánh giá ngắn mạch. Tương tự, đối với toán tử and , nếu biểu thức bên trái cho kết quả False, Python does not evaluate the expression on the right.

Vì vậy, không có đánh giá không cần thiết

5. 3. Bàn chân lý

Bảng chân lý là một bảng nhỏ cho phép chúng ta liệt kê tất cả các đầu vào có thể có và đưa ra kết quả cho các toán tử logic. Vì mỗi toán tử andor đều có hai toán hạng nên chỉ có . and.

aba và b Sai Sai Sai Sai Sai Đúng Sai Đúng Đúng Sai Sai Đúng Đúng Đúng Đúng

Trong Bảng chân lý, đôi khi chúng tôi sử dụng T và F làm tốc ký cho hai giá trị Boolean. đây là bảng chân lý mô tả hoặc .

aba hoặc bFFFFTTTFTTTT

Toán tử logic thứ ba, not , chỉ nhận một toán hạng duy nhất, vì vậy bảng chân lý của nó chỉ có hai hàng.

anot aFTTF

5. 4. Đơn giản hóa biểu thức Boolean

Một tập hợp các quy tắc để rút gọn và sắp xếp lại các biểu thức được gọi là một đại số. Ví dụ, tất cả chúng ta đều quen thuộc với các quy tắc đại số ở trường, chẳng hạn như

# Java
boolean fun = true;

# Python
fun = true
6

Ở đây chúng ta thấy một đại số khác - đại số Boolean - cung cấp các quy tắc để làm việc với các giá trị Boolean

Đầu tiên, toán tử .

# Java
boolean fun = true;

# Python
fun = true
7

Dưới đây là một số quy tắc tương ứng cho toán tử or .

# Java
boolean fun = true;

# Python
fun = true
8

Hai toán tử not triệt tiêu lẫn nhau.

# Java
boolean fun = true;

# Python
fun = true
9

5. 5. thực thi có điều kiện

Để viết các chương trình hữu ích, hầu như chúng ta luôn cần khả năng kiểm tra các điều kiện và thay đổi hành vi của chương trình cho phù hợp. Câu lệnh điều kiện cho chúng ta khả năng này. Dạng đơn giản nhất là câu lệnh if

a = False
0

a = False
1

Biểu thức Boolean sau câu lệnh if được gọi là điều kiện. Nếu nó đúng, thì tất cả các câu lệnh thụt lề sẽ được thực thi. Nếu không, thì tất cả các câu lệnh được thụt vào trong mệnh đề else sẽ được thực thi.

Lưu đồ của một câu lệnh if với một mệnh đề khác

Cú pháp của câu lệnh if như sau.

# Java
boolean fun = true;

# Python
fun = true
30

# Java
boolean fun = true;

# Python
fun = true
31

Giống như định nghĩa hàm trong chương trước và các câu lệnh ghép khác như for , if . Dòng tiêu đề bắt đầu bằng từ khóa statement consists of a header line and a body. The header line begins with the keyword if theo sau là biểu thức Boolean và kết thúc bằng dấu hai chấm [. ].

Các câu lệnh thụt lề theo sau được gọi là một khối. Câu lệnh không thụt lề đầu tiên đánh dấu sự kết thúc của khối

Mỗi câu lệnh bên trong khối câu lệnh đầu tiên được thực thi theo thứ tự nếu biểu thức Boolean đánh giá là True . Toàn bộ khối câu lệnh đầu tiên bị bỏ qua nếu biểu thức Boolean đánh giá là Sai và thay vào đó, tất cả các câu lệnh được thụt vào trong else clause are executed.

Không có giới hạn về số lượng câu lệnh có thể xuất hiện dưới hai mệnh đề của câu lệnh if , nhưng phải có ít nhất . Đôi khi, sẽ rất hữu ích nếu có một phần không có câu lệnh nào [thường là để giữ chỗ, hoặc tạo khung cho mã mà chúng ta chưa viết]. Trong trường hợp đó, chúng ta có thể sử dụng câu lệnh pass , câu lệnh này không làm gì khác ngoài việc đóng vai trò giữ chỗ.

# Java
boolean fun = true;

# Python
fun = true
30

# Java
boolean fun = true;

# Python
fun = true
33

5. 6. Bỏ qua mệnh đề else clause

Lưu đồ của một câu lệnh if không có mệnh đề nào khác

Một dạng khác của câu lệnh if là dạng trong đó else clause is omitted entirely. In this case, when the condition evaluates to True , các câu lệnh sẽ được thực thi, nếu không thì luồng thực thi sẽ tiếp tục đến câu lệnh sau if.

# Java
boolean fun = true;

# Python
fun = true
34

# Java
boolean fun = true;

# Python
fun = true
35

Trong trường hợp này, hàm in xuất ra căn bậc hai là hàm sau if — không phải vì chúng tôi để trống một dòng, . Cũng lưu ý rằng hàm gọi math. sqrt[x] sẽ báo lỗi trừ khi chúng tôi có nhập toán học .

Thuật ngữ Python

Tài liệu Python đôi khi sử dụng thuật ngữ bộ câu lệnh để chỉ cái mà chúng ta gọi là khối ở đây. Chúng có nghĩa giống nhau và vì hầu hết các ngôn ngữ khác và các nhà khoa học máy tính đều sử dụng khối từ, chúng tôi sẽ gắn bó với điều đó

Cũng lưu ý rằng else không phải là một câu lệnh. Câu lệnh if có hai mệnh đề, một trong số đó là [tùy chọn] else clause.

5. 7. chuỗi điều kiện

Đôi khi có nhiều hơn hai khả năng và chúng ta cần nhiều hơn hai nhánh. Một cách để thể hiện một tính toán như vậy là một chuỗi điều kiện

# Java
boolean fun = true;

# Python
fun = true
34

# Java
boolean fun = true;

# Python
fun = true
37

Lưu đồ của chuỗi điều kiện này

elif là viết tắt của else if . Một lần nữa, chính xác một nhánh sẽ được thực thi. Không có giới hạn về số lượng câu lệnh elif mà chỉ có một câu lệnh cuối cùng [và không bắt buộc] else statement is allowed and it must be the last branch in the statement:

# Java
boolean fun = true;

# Python
fun = true
38

# Java
boolean fun = true;

# Python
fun = true
39

Mỗi điều kiện được kiểm tra theo thứ tự. Nếu cái đầu tiên là sai, cái tiếp theo sẽ được chọn, v.v. Nếu một trong số chúng là đúng, thì nhánh tương ứng sẽ thực thi và câu lệnh kết thúc. Ngay cả khi có nhiều hơn một điều kiện là đúng, thì chỉ có nhánh đúng đầu tiên được thực thi

5. 8. điều kiện lồng nhau

Một điều kiện cũng có thể được lồng trong một điều kiện khác. [Đó là cùng một chủ đề về khả năng kết hợp, một lần nữa. ] Chúng ta có thể viết ví dụ trước như sau

Lưu đồ của điều kiện lồng nhau này

a = False
0

# Java
boolean fun = true;

# Python
fun = true
41

Câu điều kiện ngoài gồm 2 nhánh. Nhánh thứ hai chứa một câu lệnh if khác, có hai nhánh riêng. Hai nhánh đó cũng có thể chứa các câu điều kiện.

Mặc dù việc thụt lề của các câu lệnh làm cho cấu trúc trở nên rõ ràng, nhưng các điều kiện lồng nhau rất nhanh trở nên khó đọc. Nói chung, nên tránh chúng khi chúng ta có thể

Các toán tử logic thường cung cấp một cách để đơn giản hóa các câu lệnh điều kiện lồng nhau. Ví dụ: chúng ta có thể viết lại đoạn mã sau bằng cách sử dụng một điều kiện duy nhất

# Java
boolean fun = true;

# Python
fun = true
42

# Java
boolean fun = true;

# Python
fun = true
43

Hàm print chỉ được gọi nếu chúng ta bỏ qua cả hai điều kiện, do đó, thay vì sử dụng hai if statements each with a simple condition, we could make a more complex condition using the and operator. Now we only need a single if .

# Java
boolean fun = true;

# Python
fun = true
44

# Java
boolean fun = true;

# Python
fun = true
45

5. 9. Câu lệnh return statement

Câu lệnh return , có hoặc không có giá trị, tùy thuộc vào chức năng có kết quả hay vô hiệu, cho phép chúng ta kết thúc việc thực thi của . Một lý do để sử dụng trả lại sớm là nếu chúng tôi phát hiện ra tình trạng lỗi.

a = False
0

# Java
boolean fun = true;

# Python
fun = true
47

Hàm print_square_root có tham số tên là x . Điều đầu tiên nó làm là kiểm tra xem x có nhỏ hơn hoặc bằng 0 hay không, trong trường hợp đó, nó sẽ hiển thị thông báo lỗi và sau đó sử dụng return to exit the function. The flow of execution immediately returns to the caller, and the remaining lines of the function are not executed.

5. 10. đối lập logic

Mỗi toán tử trong số sáu toán tử quan hệ có một phép đối logic. ví dụ: giả sử chúng ta có thể lấy bằng lái xe khi tuổi của chúng ta lớn hơn hoặc bằng 17, chúng ta không thể lấy bằng lái xe khi chúng ta dưới 17 tuổi

Lưu ý rằng ngược lại của >== , =, and b

  • a >= b
  • a >= 18     day == 3
  • a >= 18     day != 3
  • Những biểu thức này đánh giá điều gì?

    1. 3 == 3
    2. 3 . = 3
    3. 3 >= 4
    4. không [3 = 75

      Đầu tiên

      [70-75]

      Thượng nhì

      [60-70]

      Thứ hai

      [50-60]

      Ngày thứ ba

      [45-50]

      hỗ trợ F1

      [40-45]

      F2

      < 40

      F3

    Dấu ngoặc vuông và tròn biểu thị các khoảng đóng và mở. Khoảng thời gian đóng bao gồm số và khoảng thời gian mở loại trừ nó. Vậy 39. 99999 được lớp F3, nhưng 40 được lớp F2. Cho rằng

    # Java
    boolean fun = true;

    # Python
    fun = true
    67

    Kiểm tra chức năng của bạn bằng cách in dấu và điểm cho tất cả các phần tử trong danh sách này

  • Sửa đổi chương trình biểu đồ thanh con rùa để bút ở trên các khoảng trống nhỏ giữa mỗi thanh

  • Sửa đổi chương trình biểu đồ thanh con rùa để thanh cho bất kỳ giá trị nào từ 200 trở lên được tô màu đỏ, các giá trị từ [100 đến 200] được tô màu vàng và các thanh biểu thị các giá trị nhỏ hơn 100 được tô màu xanh lục

  • Trong chương trình biểu đồ thanh con rùa, bạn dự đoán điều gì sẽ xảy ra nếu một hoặc nhiều giá trị dữ liệu trong danh sách là âm? . Thay đổi chương trình để khi in giá trị văn bản cho các thanh âm, nó sẽ đặt văn bản bên dưới phần cuối của thanh

  • Viết hàm find_hypot , cho độ dài hai cạnh của một tam giác vuông, trả về độ dài của cạnh huyền. [Gợi ý. x ** 0. 5 sẽ trả về căn bậc hai. ]

  • Viết hàm is_rightangled , cho biết độ dài ba cạnh của một tam giác, sẽ xác định xem tam giác đó có phải là góc vuông hay không. Giả sử rằng đối số thứ ba của hàm luôn là cạnh dài nhất. Nó sẽ trả về True nếu tam giác vuông góc hoặc Sai .

    Gợi ý. Số học dấu phẩy động không phải lúc nào cũng chính xác, vì vậy không an toàn khi kiểm tra các số dấu phẩy động để tìm sự bằng nhau. Nếu một lập trình viên giỏi muốn biết liệu x có bằng hoặc đủ gần với y, they would probably code it up as:

    # Java
    boolean fun = true;

    # Python
    fun = true
    68

  • Mở rộng chương trình trên để các cạnh có thể được cung cấp cho hàm theo thứ tự bất kỳ

  • Nếu bạn thắc mắc tại sao số học dấu phẩy động đôi khi không chính xác, hãy chia 10 cho 3 trên một tờ giấy và viết kết quả ở phần thập phân. Bạn sẽ thấy nó không kết thúc, vì vậy bạn sẽ cần một tờ giấy dài vô hạn. Việc biểu diễn các số trong bộ nhớ máy tính hoặc trên máy tính của bạn cũng gặp vấn đề tương tự. bộ nhớ là hữu hạn và một số chữ số có thể phải bị loại bỏ. Vì vậy, sự không chính xác nhỏ lẻn vào. Hãy thử kịch bản này

    Điều gì là đúng và sai trong Python?

    Các số có thể được sử dụng làm giá trị bool bằng cách sử dụng phương thức bool[] tích hợp sẵn của Python. Bất kỳ số nguyên, số dấu phẩy động hoặc số phức nào có giá trị bằng 0 đều được coi là Sai, trong khi nếu chúng có giá trị là bất kỳ số dương hoặc số âm nào thì nó được coi là Đúng

    Loại dữ liệu nào là đúng và sai trong Python?

    The boolean data type is either True or False. In Python, boolean variables are defined by the True and False keywords. The output indicates the variable is a boolean data type.

    Kiểu dữ liệu nào là đúng sai?

    A Kiểu dữ liệu Boolean có một trong hai giá trị có thể [thường được ký hiệu là đúng và sai], nhằm biểu thị hai giá trị thực của logic . Nó được đặt theo tên của George Boole, người đầu tiên định nghĩa một hệ thống logic đại số vào giữa thế kỷ 19.

    Các hàm Python có thể Đúng Sai không?

    Giá trị Boolean . You can evaluate any expression in Python, and get one of two answers, True or False .
  • Chủ Đề