So sánh boolean trong python

Trong bài trước, Kteam đã giới thiệu cho bạn HÀM INPUT - một hàm giúp bạn yêu cầu nhập dữ liệu từ bàn phím

Nội dung chính Hiển thị

Ở bài viết này, Kteam sẽ giới thiệu với các bạn Kiểu diễn đạt BOOLEAN TRÊN PYTHON . Một kiểu dữ liệu cực kỳ cần thiết trong các phần sử dụng cấu trúc rẽ nhánh, vòng lặp.

Nội dung

Để đọc hiểu bài này tốt nhất bạn cần

  • Cài đặt sẵn MÔI TRƯỜNG PHÁT TRIỂN CỦA PYTHON
  • Xem qua bài CÁCH CHUYỂN TRÌNH PYTHON
  • Nắm CÁCH GHI CHÚ VÀ BIẾN TRONG PYTHON
  • CÁC KỲ DIỄN BIỆT THAM KHẢO GIỚI THIỆU TRONG PYTHON

Trong bài viết này, chúng ta sẽ cùng tìm hiểu những nội dung sau đây

  • Giới thiệu về Boolean trong Python
  • Boolean trong các so sánh toán tử
  • NOT, AND và OR
  • Các giá trị cũng là các Boolean
  • Cú pháp đường cho việc so sánh trong Python

Giới thiệu về Boolean trong Python

Boolean là một kiểu dữ liệu mà các ngôn ngữ lập trình ngày này đều thường xuyên sử dụng. Python cũng không ngoại lệ.

This data type only has two value

  • Một là Đúng – có nghĩa là đúng
  • Nếu không thì là Sai – có nghĩa là sai

Bạn cũng đã thấy nó rồi khi sử dụng toán tử trong các bài kiểu dữ liệu chuỗi, danh sách,…

Boolean trong các so sánh toán tử

So sánh giữa các số với các số

So sánh giữa hai loại iterable cùng loại

When so sánh hai iterable cùng loại. Python sẽ lấy từng phần tử một lần trong iterable so sánh. Kteam will get ví dụ về kiểu chuỗi

>>> 'Kteam' == "Kteam"
True
>>> 'Free' == 'Education'
False

Lưu ý. Python so sánh các ký tự với nhau bằng cách đưa chúng về dưới dạng số bằng hàm ord. Bạn có thể tham khảo giá trị của nó trong ASCII Bảng.

>>> ord['A']
65
>>> ord['a']
97

Khi bạn so sánh bằng các thuật toán == , >=, , >> 'a' > 'ABC' # ord['a'] không bằng ord['A'], không cần phải so sánh tiếp và ord['a'] > ord['A'] là đúng => True True >>> 'aaa' < 'aaAcv' # ord['a'] không bằng ord['A'] ở vị trí thứ 2, không cần phải so sánh tiếp và ord['a'] < ord['A'] là sai => False False >>> 'aaa' < 'aaaAcv' # 3 phần tử đầu tiên bằng nhau. Ở phần tử thứ tư, ta sẽ so sánh 0 và ord['A'] và dĩ nhiên ord['A'] > 0 => True True

Toán tử is [Nhắc lại ở bài 12]

Xem lại toán tử trong Danh sách tại đây

Đây là một toán tử dễ nhầm lần với toán tử == . Nhưng thật sự thì nó rất đơn giản.

Ở đây, Kteam sẽ nói tới một phần kiến ​​thức bằng tiếng Anh để bạn có thể dễ dàng phân biệt 2 toán tử trên. Từ is trong tiếng Việt [ở ngữ cảnh này – ngôn ngữ lập trình Python] có nghĩa là “là”. Còn toán tử == có nghĩa là bằng.

Kteam sẽ đưa ra một ví dụ. Bạn cũng không nên trùm khe việc làm đúng sai trong ví dụ này, nó chỉ giúp bạn hiểu sự khác nhau giữa toán tử == và thôi

Thế nào là bằng [==]?

  • Bằng là toán tử so sánh khi nói về mặt giá trị
  • Ví dụ. Chiều cao của Tèo bằng chiều cao của Tí

Thế nào là [là]?

  • Là [là] trong trường hợp này là liên kết từ diễn giải định nghĩa, tính chất của một sự việc/sự việc/con người
  • Ví dụ. Ta không thể nói “Chiêu cao của Tèo là chiều cao của Tí” vì Tèo là của Tèo, đâu phải của Tí. Nên nói “Chiều cao của Tèo là chiều cao của Tèo” hay “Chiêu cao của Tí là chiều cao của Tí”

Ta hãy quay lại với Python bằng cách khởi động hai Danh sách

>>> lst = [1, 2, 3]
>>> lst_ = [1, 2, 3]

Chúng đều có giá trị là một danh sách bao gồm ba phần tử 1, 2 và 3. Vì vậy, họ có bằng nhau? . att always as known

>>> lst == lst_
True

Nhưng lst có phải là lst_? . Vì đó là hai List khác nhau không liên quan đến nhau

>>> lst is lst_
False

Vì vậy nếu ta có một danh sách khác

>>> _lst = lst
>>> _lst
[1, 2, 3]

Thì _lst có phải là lst không? . Do đó, chúng là một, chỉ khác nhau cái nhãn thôi

>>> _lst is lst
True

Từ đây, ta có thể suy ra một kết luận. Khi so sánh hai giá trị [đối tượng] bằng toán học == thì Python sẽ so sánh bằng giá trị của chúng. Còn nếu so sánh bằng toán tử is thì Python sẽ lấy giá trị của id hàm để so sánh.

Lưu ý toán tử là

You don't so sánh 2 số như thế này

________số 8

Kết quả luôn là True. You will only see other other when

>>> a = 699
>>> b = 699
>>> a is b
False

Tuy nhiên, có một số trường hợp bạn cần biết

>>> ord['A']
65
>>> ord['a']
97
0

Các số từ -5 đến 256 hoặc là một chuỗi số có ký tự số dưới 20 thì các biến có cùng một giá trị sẽ có cùng một giá trị được trả về từ hàm id

NOT, AND và OR

Not is overlay

Đây là cách bạn có thể thay đổi giá trị Boolean. Trong một số trường hợp đặc biệt. Việc kiểm tra giá trị Boolean đó là Sai hay là Đúng hơi phức tạp, lộn xộn trong khi đó việc kiểm tra giá trị đảo ngược thì dễ dàng, đơn giản hơn

And is and

Or is or

Bạn cần nằm lòng bảng sau để có thể kết hợp các điều kiện một cách xuyên suốt. Từ đó, bạn có thể sử dụng linh hoạt các câu lệnh điều kiện, đặt biểu thức cho các vòng lặp một cách hiệu quả

Bạn hãy xem bảng sau đây

Ví dụ . toknown better than. First first is and

>>> ord['A']
65
>>> ord['a']
97
1

Continue to is or

>>> ord['A']
65
>>> ord['a']
97
2

The end of the end is not

>>> ord['A']
65
>>> ord['a']
97
3

Các giá trị cũng là các Boolean

Đúng vậy, các giá trị đều là các boolean. Đương nhiên, bạn có thể chuyển đổi các đối tượng thành Boolean bằng hàm bool .

Mọi giá trị khi chuyển về Boolean đều là True ngoại trừ một số trường hợp sau

  • Số 0
  • Không có
  • Rỗng

Ví dụ. để hiểu rõ hơn

>>> ord['A']
65
>>> ord['a']
97
4

Add a number of field True

>>> ord['A']
65
>>> ord['a']
97
5

1 là Đúng, 0 là Sai

Không quá quan trọng, nhưng cũng nên biết

>>> ord['A']
65
>>> ord['a']
97
6

Cú pháp đường cho việc so sánh trong Python

If you ever learn a other language language setting. Bạn đôi lúc phải kiểm tra các trường hợp như kiểu tra một số n có trong khoảng [a; b], đoạn [a; . Đương nhiên, những lần làm như vậy cũng làm bạn hơi cực

>>> ord['A']
65
>>> ord['a']
97
7

Nhưng với Python, bạn có thể làm thế này

>>> ord['A']
65
>>> ord['a']
97
8

Với trường hợp nếu bạn muốn kiểm tra xem một số k có bằng x hoặc y hoặc là z hay không thì thông thường bạn phải viết khá dài

>>> ord['A']
65
>>> ord['a']
97
9

Tuy nhiên, bạn cũng có thể

>>> 'a' > 'ABC' 
# ord['a'] không bằng ord['A'], không cần phải so sánh tiếp và ord['a'] > ord['A'] là đúng => True
True
>>> 'aaa' < 'aaAcv' 
# ord['a'] không bằng ord['A'] ở vị trí thứ 2, không cần phải so sánh tiếp và ord['a'] < ord['A'] là sai => False
False
>>> 'aaa' < 'aaaAcv' 
# 3 phần tử đầu tiên bằng nhau. Ở phần tử thứ tư, ta sẽ so sánh 0 và ord['A'] và dĩ nhiên ord['A'] > 0 => True
True
0

Kết luận

Bài viết này đã giới thiệu sơ lược cho các bạn KExpress BOOLESE TRÊN PYTHON

Ở bài sau, Kteam sẽ giới thiệu đến bạn CẤU TRÚC RẼ NHÁNH TRONG PYTHON

Cảm ơn bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc đóng góp ý kiến ​​của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử phép – Không sợ khó”

Thảo luận

Nếu bạn gặp bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam. com to get the support from the community

Chủ Đề