Operators in Python 5

ในบทความนี้เราจะมาต่อกันกับ Operators ในภาษาไพทอนกันนะครับ สำหรับ Operators ที่ยังไม่ได้พูดถึงจะมี Identity Operators, Membership operators, and Bitwise operators

โดย Identity Operators จะเป็นตัวดำเนินการประเภทที่ใช้ในการเปรียบเทียบวัตถุ (object) โดยเราจะไม่เปรียบเทียบว่าวัตถุทั้งสองอย่างมีค่าเท่ากันหรือไม่ แต่เราจะเปรียบเทียบว่าวัตถุทั้งสองอย่างนั้นเป็นสิ่งๆเดียวกันหรือไม่ อยู่ในที่อยู่เดียวๆกันหรือไม่ (เวลาเราเขียนโปรแกรมการประกาศว่า x = 10, x = 10 จะอยู่ในที่อยู่ที่ๆหนึ่งในหน่วยความจำของเรา ถ้าเราประกาศว่า y = 10 ตามมา ก็จะอยู่คนละที่อยู่กัน หมายความว่ามีค่าเท่ากันแต่อยู่คนละที่อยู่ในหน่วยความจำนั่นเอง)

ในภาษาไพทอนจะมีแค่สองคำสั่งเท่านั้น คือ is และ is not เพื่อถามว่าวัตถุทั้งสองอย่างเป็นวัตถุเดียวกันหรือไม่

ตัวดำเนินการตัวอย่างคำอธิบาย
isA is Bจะ return ว่า True หากวัตถุทั้งสองเป็นวัตถุเดียวกัน
is notA is not Bจะ return ว่า True หากวัตถุทั้งสองเป็นคนละวัตถุกัน

ต่อมาเราเคลียร์กันดีกว่าว่าคำว่า “วัตถุเดียวกัน” กับ “มีค่าเท่ากัน” ไม่เหมือนกันยังไง

ตัวอย่างที่ 1

บรรทัดที่ 1 ให้ A เป็น list มีสมาชิก 3 ตัวคือ I Like You

บรรทัดที่ 2 ให้ B เป็น list มีสมาชิก 3 ตัวเช่นกันคือ I Like You

บรรทัดที่ 4 ถามว่า A เท่ากับ B หรือไม่ คำตอบคือ เท่า เพราะมีสมาชิกเหมือนกัน เท่ากัน

ตัวอย่างที่ 2

บรรทัดที่ 1 ให้ A เป็น list มีสมาชิก 3 ตัวคือ I Like You

บรรทัดที่ 2 ให้ B เป็น list มีสมาชิก 3 ตัวเช่นกันคือ I Like You

บรรทัดที่ 4 ถามว่า A เป็นวัตถุเดียวกับ B หรือไม่ คำตอบคือ ไม่ เพราะมีสมาชิกเหมือนกันเท่านั้นแต่ไม่ได้อยู่ที่อยู่เดียวกัน

ตัวอย่างที่ 3

บรรทัดที่ 1 ให้ A เป็น list มีสมาชิก 3 ตัวคือ I Like You

บรรทัดที่ 2 ให้ B เป็น list มีสมาชิก 3 ตัวเช่นกันคือ I Like You

บรรทัดที่ 3 ให้ C เป็นวัตถุเดียวกับ A (ใช้ที่อยู่ในหน่วยความจำเดียวกัน)

บรรทัดที่ 4 ถามว่า A เป็นวัตถุเดียวกับ C หรือไม่ คำตอบคือ ใช้ เพราะมีอยู่ที่อยู่เดียวกันถือว่าเป็นวัตถุเดียวกัน

Write a comment