วิธีใช้ไพธอนไม่เท่ากันและตัวดำเนินการเท่ากัน
เผยแพร่แล้ว: 2022-01-29ใน Python คุณสามารถใช้โอเปอเรเตอร์ ไม่เท่ากับ และเท่ากับและ เท่ากับ เพื่อตรวจสอบว่าอ็อบเจ็กต์ Python สองรายการมีค่าเท่ากันหรือไม่ บทช่วยสอนนี้จะสอนวิธีใช้โอเปอเรเตอร์เหล่านี้พร้อมโค้ดตัวอย่างมากมาย
ในบทช่วยสอนนี้ คุณจะได้เรียนรู้:
- ไวยากรณ์ของตัวดำเนินการ ไม่เท่ากัน (
!=
) และกรณีการใช้งาน - ไวยากรณ์ของตัวดำเนินการ เท่ากับ (
==
) พร้อมตัวอย่าง และ - การใช้
is
และis not
โอเปอเรเตอร์เพื่อตรวจสอบตัวตนของสองอ็อบเจกต์ Python
มาเริ่มกันเลย.
Python ไม่เท่ากับตัวดำเนินการ Syntax
สำหรับวัตถุ Python สองรายการใด ๆ obj1
และ obj2
ไวยากรณ์ทั่วไปที่จะใช้ตัวดำเนินการ ไม่เท่ากัน คือ:
<obj1> != <obj2>
- คืนค่า
True
เมื่อค่าของobj1
และobj2
ไม่เท่ากัน และ - คืนค่า
False
มิฉะนั้น
หมายเหตุ : ตามที่กล่าวไว้ข้างต้น
obj1
และobj2
สามารถเป็นจำนวนเต็ม ตัวเลขทศนิยม สตริง รายการ และอื่นๆ
Python ไม่เท่ากับ Operator Code Examples
ในส่วนนี้ เรามาโค้ดตัวอย่างบางส่วนเพื่อทำความเข้าใจตัวดำเนินการ ไม่เท่ากัน ดีกว่า
การใช้ Python Not Equal Operator สำหรับการเปรียบเทียบ
นี่คือตัวอย่างแรกของเรา
num1 = 27 num2 = 3*9 num1 != num2 # Output: False
คุณสามารถเรียกใช้ตัวอย่างโค้ดบน Geekflare Python IDE ได้จากเบราว์เซอร์ของคุณโดยตรง หรือคุณสามารถเลือกที่จะรันบนเครื่องของคุณ
เนื่องจาก num1 = 27
และ num2
ก็ประเมินเป็น 27
ด้วย ( 3*9 = 27
) ค่าของ num1
และ num2
จะเท่ากัน ดังนั้นตัวดำเนินการ !=
จะส่งกลับ False
ลองมาอีกตัวอย่างหนึ่ง
ในโค้ดด้านล่าง num1
ถูกตั้งค่าเป็น 7 และ num2
ถูกตั้งค่าเป็นสตริง 7 เนื่องจากเป็นข้อมูลประเภทต่างๆ ตัวดำเนินการที่ ไม่เท่ากัน จะคืนค่า True
num1 = 7 num2 = "7" num1 != num2 # Output: True
คุณแปลงสตริงเป็นจำนวนเต็มดังที่แสดง:
num1 = 7 num2 = int("7") num1 != num2 # Output: False
ในกรณีนี้ คุณจะเห็นว่าผลลัพธ์ที่ได้กลับเป็น False
เนื่องจากตอนนี้ num1
และ num2
เท่ากับจำนวนเต็ม 7
คุณยังสามารถใช้โอเปอเรเตอร์ ไม่เท่ากัน กับคอลเล็กชัน Python เช่น รายการ ทูเปิล และเซ็ต
หมายเหตุ : สำหรับการรวบรวมข้อมูล เช่น รายการ ตัวดำเนินการไม่เท่ากันทำงานโดยการตรวจสอบค่าของแต่ละรายการ ตัวอย่างเช่น สองรายการ
list1
และlist2
— แต่ละความยาวn
— จะเท่ากันก็ต่อเมื่อlist1[i] == list2[i]
fori
ใน{0,1,2,3,..n-1}
นี่คือตัวอย่าง:
list1 = [2,4,6,8] list2 = [2,4,6,9] list1 != list2 # Output: True
ในตัวอย่างข้างต้น list1
และ list2
ต่างกันเพียงองค์ประกอบเดียว และตัวดำเนินการไม่เท่ากับ !=
คืนค่า True
ตามที่คาดไว้
การใช้ Python Not Equal Operator ใน Conditionals
คุณมักจะใช้ตัวดำเนินการ ไม่เท่ากับ เป็นส่วนหนึ่งของเงื่อนไข Python
ตัวอย่างเช่น ข้อมูลโค้ดด้านล่างแสดงวิธีที่คุณสามารถตรวจสอบได้ว่าตัวเลขเป็นเลขคี่หรือไม่
จำนวนที่หารด้วย 2 ไม่ลงตัวจะเป็น เลขคี่ และสิ่งนี้จะลดลงเป็นเงื่อนไข
num%2 != 0
num = 7 if(num%2 != 0): print("The number is odd.") else: print("The number is even.") # Output: The number is odd.
คุณยังสามารถใช้เงื่อนไขในการทำความเข้าใจรายการเมื่อคุณต้องการเก็บเฉพาะองค์ประกอบในรายการที่ตรงตามเงื่อนไขเฉพาะ ในตัวอย่างด้านล่าง odd_10
คือรายการของเลขคี่ทั้งหมดที่น้อยกว่า 10
odd = [num for num in range(10) if num%2 != 0] print(odd) # Output: [1, 3, 5, 7, 9]
และนั่นก็เสร็จสิ้นการสนทนาของเราเกี่ยวกับตัวดำเนินการไม่เท่ากัน ( !=
)
อย่างที่คุณอาจเดาได้ในตอนนี้ ตัวดำเนินการ เท่ากับ ให้ ผล ตรงกันข้ามกับ ตัวดำเนินการ ไม่เท่ากับ
คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับเรื่องนี้ในหัวข้อถัดไป
ไวยากรณ์ตัวดำเนินการเท่ากับ Python
ต่อไปนี้คือรูปแบบการใช้ Python เท่ากับ ตัวดำเนินการ:
<obj1> == <obj2> #where <obj1> and <obj2> are valid Python objects
- คืนค่า
True
เมื่อค่าของobj1
และobj2
เท่ากัน และ - คืนค่า
False
มิฉะนั้น
Python Equal Operator Code Examples
สามารถใช้ตัวดำเนินการ เท่ากับ ( ==
) ได้ใกล้เคียงกับตัวดำเนินการ ไม่เท่ากัน
ลองโค้ดตัวอย่างต่อไปนี้:
- เพื่อตรวจสอบว่าสองสตริงเท่ากันหรือไม่
- เพื่อตรวจสอบว่าตัวเลขเป็นคู่หรือไม่ และ
- เพื่อใช้เงื่อนไขในการทำความเข้าใจรายการ
การใช้ Python Not Equal Operator สำหรับการเปรียบเทียบ
ในข้อมูลโค้ดด้านล่าง str1
และ str2
มีค่าเท่ากัน ดังนั้นตัวดำเนินการ เท่ากับ ( ==
) จะคืนค่า True

str1 = "coding" str2 = "coding" str1 == str2 # Output: True

ลองใช้ตัวดำเนินการ เท่ากับ ในนิพจน์เงื่อนไข
หมายเหตุ : จำนวนที่หารด้วย 2 ลงตัวจะเป็นเลข คู่ และในโค้ดนี้ จะลดเป็นเงื่อนไข
num%2 == 0
num = 10 if(num%2 == 0): print("The number is even.") else: print("The number is odd.") # Output: The number is even.
มาต่อจากตัวอย่างนี้กัน ใช้ list comprehension ของ Python เพื่อให้ได้เลขคู่ทั้งหมดที่น้อยกว่า 10
even_10 = [num for num in range(10) if num%2 == 0] print(even_10) # Output: [0, 2, 4, 6, 8]
ในตัวอย่างข้างต้น
-
range(10)
ส่งคืนวัตถุช่วงซึ่งสามารถวนซ้ำเพื่อรับจำนวนเต็มทั้งหมดตั้งแต่ 0 ถึง 9 - เงื่อนไข
num%2 == 0
เป็นTrue
สำหรับเลขคู่เท่านั้น - ดังนั้น
even_10
คือรายการของเลขคู่ทั้งหมดที่น้อยกว่า 10
จนถึงตอนนี้ คุณได้เรียนรู้วิธีตรวจสอบ ความเท่าเทียมกัน โดยใช้ตัวดำเนินการ ไม่เท่ากับ ( !=
) และ เท่ากับ ( ==
)
ในส่วนถัดไป คุณจะได้เรียนรู้วิธียืนยัน ตัวตน ของสองออบเจ็กต์ คุณจะตรวจสอบว่าวัตถุ Python สองรายการ เหมือนกัน หรือไม่
วิธีใช้ Python เป็นและไม่ใช่ตัวดำเนินการ
หากคุณเป็นมือใหม่ในการเขียนโปรแกรม Python อาจเป็นไปได้ว่าคุณสับสนระหว่าง ==
และ is
ขอชี้แจงว่าในส่วนนี้
ในส่วนก่อนหน้านี้ เรามีตัวอย่างที่ str1
และ str2
โดยที่ equal และตัวดำเนินการ ==
คืนค่า True
ตอนนี้เรียกใช้ข้อมูลโค้ดต่อไปนี้
str1 = "coding" str2 = "coding" str1 is str2 # Output: False
คุณจะเห็นว่า str1 is str2
คืนค่า False
ลองย้อนกลับไปและทำความเข้าใจว่าตัวดำเนินการของ Python is
อะไร
ตัวดำเนินการ
is
ทำงานบนวัตถุ Python สองอันใดๆ
และส่งกลับค่าTrue
ต่อเมื่อวัตถุทั้งสอง เหมือนกัน นั่นคืออ้างถึง วัตถุเดียวกัน ในหน่วยความจำ
แม้ว่า str1
จะเท่ากับ str2
แต่ str1
ไม่ใช่ str2
เนื่องจากมันชี้ไปที่วัตถุสองชิ้นที่แตกต่างกันในหน่วยความจำ ดังนั้นจึงมีอัตลักษณ์ที่แตกต่างกัน

ใน Python คุณสามารถใช้ฟังก์ชัน id()
เพื่อรับข้อมูลประจำตัวของวัตถุ
เรียกใช้เซลล์รหัสต่อไปนี้เพื่อรับข้อมูลประจำตัวของ str1
และ str2
id(str1) # Sample output: 139935398870320 id(str2) # Sample output: 139935398871344
อย่างที่คุณเห็น str1
และ str2
มีอัตลักษณ์ต่างกัน และ str1 is str2
คืนค่าเป็น False
ตามที่คาดไว้
ประกอบเข้าด้วยกัน,
<obj1> is <obj2> # returns True if and only if id(<obj1>) == id(<obj2>) # returns True
มาตรวจสอบอย่างรวดเร็วดังที่แสดง:
str1 = "coding" str2 = str1 print(str1 is str2) print(id(str1) == id(str2)) # Output True True
ตามสัญชาตญาณ ตัวดำเนินการ is not
จะทำตรงกันข้ามกับตัวดำเนินการ is
ตัวดำเนินการ
is not
ทำงานบนวัตถุ Python สองรายการ
และส่งกลับค่า "False
" ต่อเมื่อวัตถุทั้งสอง เหมือนกัน นั่นคือการอ้างอิงถึง วัตถุเดียวกัน ในหน่วยความจำ มิฉะนั้น จะคืนค่าTrue
ในตัวอย่างโค้ดด้านบน ให้ลองแทนที่ is
with is not
และตรวจสอบผลลัพธ์
บทสรุป
หวังว่าคุณพบว่าบทช่วยสอนนี้มีประโยชน์
เพื่อสรุป คุณได้เรียนรู้:
- วิธีใช้ตัวดำเนินการ เท่ากับ (
==
) และ ไม่เท่ากับ (!=
) เพื่อตรวจสอบว่าวัตถุ Python สองตัวมีค่าเท่ากันหรือไม่ - ความแตกต่างระหว่าง ความเท่าเทียมกัน และ เอกลักษณ์ของ วัตถุ Python และ
- วิธีที่ Python
is
และis not
ตัวดำเนินการช่วยในการตรวจสอบว่าวัตถุ Python สองตัวเหมือนกันหรือไม่
เรียนรู้วิธีคำนวณความแตกต่างของเวลาหรือสร้างเกมงูในหลามที่นี่
แล้วพบกันใหม่ในบทช่วยสอนถัดไป ถึงเวลานั้น ขอให้สนุกกับการเรียนและเขียนโค้ด!