บางครั้งเราต้องการตรวจสอบว่ามีค่าเดียวซ้ำซ้อนใน List ทั้งหมดหรือไม่ เราสามารถตรวจสอบสถานการณ์นี้ได้ด้วยโปรแกรม Python ด้านล่าง มีหลายวิธีการ
ใช้ for Loop
ในวิธีนี้ เราจับองค์ประกอบแรกจาก List และใช้ for loop แบบดั้งเดิมเปรียบเทียบแต่ละองค์ประกอบกับองค์ประกอบแรก หากค่าไม่ตรงกับองค์ประกอบใดๆ เราจะออกจากลูปและผลลัพธ์เป็น false
ตัวอย่าง
List = ['Mon', 'Mon', 'Mon', 'Mon']
result = True
# ดึงองค์ประกอบแรก
first_element = List[0]
# เปรียบเทียบทุกองค์ประกอบกับองค์ประกอบแรก
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()
เมธอด all() ใช้การเปรียบเทียบสำหรับแต่ละองค์ประกอบใน List คล้ายกับวิธีแรก แต่แทน for loop เราใช้เมธอด all()
ตัวอย่าง
List = ['Mon', 'Mon', 'Tue', 'Mon']
# ใช้ 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()
เมธอด count() ของ Python List คืนค่าจำนวนครั้งที่องค์ประกอบปรากฏใน List ดังนั้น หากมีองค์ประกอบเดียวกันซ้ำใน List ความยาวของ List จาก len() จะเท่ากับจำนวนครั้งที่องค์ประกอบปรากฏจาก count() โปรแกรมด้านล่างใช้ตรรกะนี้
ตัวอย่าง
List = ['Mon', 'Mon', 'Mon', 'Mon']
# ผลลัพธ์จาก count ตรงกับผลลัพธ์จาก 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