Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ลบทูเพิลที่ซ้ำกันออกจากรายการทูเพิลใน Python


เมื่อจำเป็นต้องลบทูเพิลที่ซ้ำกันออกจากรายการทูเพิล สามารถใช้ลูป เมธอด 'ใดๆ' และวิธีการแจงนับได้

เมธอด 'any' จะตรวจสอบเพื่อดูว่าค่าใดๆ ใน iterable นั้นเป็น True หรือไม่ นั่นคืออย่างน้อยหนึ่งค่าที่เป็น True ถ้าใช่ จะส่งกลับ 'True' มิฉะนั้นจะคืนค่า 'False'

สามารถใช้รายการเพื่อเก็บค่าที่แตกต่างกัน (เช่น ข้อมูลของประเภทข้อมูลใดๆ เช่น จำนวนเต็ม จุดลอยตัว สตริง และอื่นๆ)

รายการ tuple โดยทั่วไปประกอบด้วย tuple อยู่ในรายการ

วิธีการแจกแจงจะเพิ่มตัวนับให้กับ iterable ที่กำหนด และส่งกลับ

ด้านล่างนี้เป็นการสาธิตสำหรับสิ่งเดียวกัน -

ตัวอย่าง

def delete_duplicate(my_lst):  
   return [[a, b] for i, [a, b] in enumerate(my_lst)
   if not any(c == b for _, c in my_lst[:i])]
     
my_list = [(23, 45), (25, 17), (35, 67), (25, 17)]

print("The list of tuples is")
print(my_list)
print("The function to remove duplicates is called")
print(delete_duplicate(my_list))

ผลลัพธ์

The list of tuples is
[(23, 45), (25, 17), (35, 67), (25, 17)]
The function to remove duplicates is called
[[23, 45], [25, 17], [35, 67]]

คำอธิบาย

  • มีการกำหนดเมธอดชื่อ 'delete_duplicate' ซึ่งรับรายการทูเพิลเป็นพารามิเตอร์
  • จะแจกแจงรายการของทูเพิลและใช้วิธี 'ใดๆ' เพื่อดูว่ารายการมีค่าจริงอย่างน้อยค่าเดียวหรือไม่
  • ส่งคืนเหมือนกับเอาต์พุต
  • รายการทูเพิลถูกกำหนดและแสดงบนคอนโซล
  • เมธอดนี้เรียกโดยส่งรายการทูเพิลนี้ไป
  • ผลลัพธ์นี้จะแสดงบนคอนโซล