วิธีใช้ไพธอนไม่เท่ากันและตัวดำเนินการเท่ากัน
เผยแพร่แล้ว: 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 สองตัวเหมือนกันหรือไม่
เรียนรู้วิธีคำนวณความแตกต่างของเวลาหรือสร้างเกมงูในหลามที่นี่
แล้วพบกันใหม่ในบทช่วยสอนถัดไป ถึงเวลานั้น ขอให้สนุกกับการเรียนและเขียนโค้ด!
