Boolean

บูลีนใน 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

Nattawut Phetmak

Jack of all Trades

blog comments powered by Disqus