บางครั้งเราพบว่าจำเป็นต้องตรวจสอบว่าเรามีค่าเดียวซ้ำในรายการเป็นองค์ประกอบรายการหรือไม่ เราสามารถตรวจสอบสถานการณ์ดังกล่าวได้โดยใช้โปรแกรมหลามด้านล่าง มีแนวทางที่แตกต่างกัน
ใช้สำหรับวนซ้ำ
ในวิธีนี้ เราจะดึงองค์ประกอบแรกจากรายการ และใช้ for loop แบบดั้งเดิมเพื่อเปรียบเทียบแต่ละองค์ประกอบกับองค์ประกอบแรก หากค่าไม่ตรงกับองค์ประกอบใด ๆ เราก็ออกจากลูปและผลลัพธ์จะเป็นเท็จ
ตัวอย่าง
List = ['Mon','Mon','Mon','Mon'] result = True # Get the first element first_element = List[0] # Compares all the elements with the first element for word in List: if first_element != word: result = False print("All elements are not equal") break else: result = True if result: print("All elements are equal")
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
All elements are equal All elements are equal All elements are equal All elements are equal
ใช้ทั้งหมด()
วิธี all() ใช้การเปรียบเทียบสำหรับแต่ละองค์ประกอบในรายการ คล้ายกับสิ่งที่เราทำในแนวทางแรก แต่แทนที่จะเป็น for loop เรากำลังใช้วิธี all()
ตัวอย่าง
List = ['Mon','Mon','Tue','Mon'] # Uisng all()method result = all(element == List[0] for element in List) if (result): print("All the elements are Equal") else: print("All Elements are not equal")
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
All the elements are not Equal
การใช้ Count()
python list method count() คืนค่าจำนวนครั้งที่องค์ประกอบเกิดขึ้นในรายการ ดังนั้นหากเรามีองค์ประกอบเดียวกันซ้ำกันในรายการ ความยาวของรายการโดยใช้ len() จะเท่ากับจำนวนครั้งที่องค์ประกอบนั้นอยู่ในรายการโดยใช้การนับ () โปรแกรมด้านล่างใช้ตรรกะนี้
ตัวอย่าง
List = ['Mon','Mon','Mon','Mon'] # Result from count matches with result from len() result = List.count(List[0]) == len(List) if (result): print("All the elements are Equal") else: print("Elements are not equal")
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
All the elements are Equal