ในบทความนี้ เราจะมาเรียนรู้วิธีสร้างคู่จากสองรายการ โดยที่องค์ประกอบที่คล้ายคลึงกันจะไม่สร้างคู่ ทำตามขั้นตอนด้านล่างเพื่อแก้ไขปัญหา
- เริ่มต้นรายการด้วยองค์ประกอบ
- วนซ้ำรายการและผนวกคู่เข้าในรายการหากองค์ประกอบที่เกี่ยวข้องจากรายการไม่เหมือนกัน
- พิมพ์ผลลัพธ์
ตัวอย่าง
มาดูโค้ดกันเลย
# การเริ่มต้น listlist_1 =[1, 2, 3, 4, 5]list_2 =[5, 8, 7, 1, 3, 6]# การสร้างคู่ผลลัพธ์ =[(i, j) สำหรับฉันใน list_1 สำหรับ j ใน list_2 if i !=j]# พิมพ์ผลการพิมพ์ (ผลลัพธ์)
หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้
ผลลัพธ์
<ก่อนหน้า>[(1, 5), (1, 8), (1, 7), (1, 3), (1, 6), (2, 5), (2, 8), (2, 7 ), (2, 1), (2, 3), (2, 6), (3, 5), (3, 8), (3, 7), (3, 1), (3, 6), (4, 5), (4, 8) (4, 7), (4, 1), (4, 3), (4, 6), (5, 8) (5, 7), (5 , 1), (5, 3), (5, 6)]เราสามารถแก้ปัญหาด้วยโมดูล itertools ได้เช่นกัน มันมีวิธีการที่เรียกว่าผลิตภัณฑ์ที่ทำให้คู่ขององค์ประกอบทั้งหมด เราสามารถกรองคู่หลังจากหาคู่ได้
ตัวอย่าง
มาดูโค้ดกันเลย
# การนำเข้า moduleimport itertools# การเริ่มต้น listlist_1 =[1, 2, 3, 4, 5]list_2 =[5, 8, 7, 1, 3, 6]# pairspairs =itertools.product(list_1, list_2) # การกรอง pairsresult =[pair for pair in pairs if pair[0] !=pair[1]]# printing the resultprint(result)
หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้
ผลลัพธ์
<ก่อนหน้า>[(1, 5), (1, 8), (1, 7), (1, 3), (1, 6), (2, 5), (2, 8), (2, 7 ), (2, 1), (2, 3), (2, 6), (3, 5), (3, 8), (3, 7), (3, 1), (3, 6), (4, 5), (4, 8) (4, 7), (4, 1), (4, 3), (4, 6), (5, 8) (5, 7), (5 , 1), (5, 3), (5, 6)]บทสรุป
หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้