Nattawut Phetmak
Jack of all Trades
บูลีนใน Python นั้นตรงไปตรงมามาก คือใช้ True
กับ False
ครับ
ตรระกะก็เช่นกัน ใช้คำภาษาอังกฤษอย่าง and
or
not
ตรรงๆ เลย
# this all are True
True or False
not False and True
อย่างไรก็ดี แม่ว่า Python จะเป็น strong type แต่เราก็ยังใช้ 0, 1 แทนบูลีนได้อยู่ (แค่ 2 ตัวเท่านั้น)
# this are True
0 == False
1 == True
# while both of this are False
2 == False
2 == True
การเปรียบเทียบเท่ากับ/ไม่เท่ากับ สามารถใช้ได้กับทั้งตัวเลข, string, บูลีน ฯลฯ โดยมันจะส่งผลลัพท์ออกมาเป็นบูลีน
# this all are True
4.0 == 4
'a' != 97
ส่วนการเปรียบเทียบมากกว่า/น้อยกว่านั้น แม้จะใช้กับข้อมูลนอกเหนือจากตัวเลขได้ แต่ก็ต้องระวังมากพอสมควร
# this all are True
128 > 42
'a' < 'b'
'b' >= 'ab'
0.1 <= 0.1
อีกอย่างที่เป็นจุดแข็งของ Python คือ การวางประโยคเปรียบเทียบต่อๆ กันได้ เช่น
l, h = 0, 1
# in other language, you may write like:
(0 <= l) and (l < h) and (h <= 1)
# but in python, its shorten to this:
0 <= l < h <= 1