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

Python - สร้างคู่จากสองลิสต์ โดยห้ามให้ค่าในคู่เหมือนกัน

สร้างคู่ (i, j) จาก list_1 และ list_2 โดยที่ i != j

วิธีที่ 1: List Comprehension

list_1 = [1, 2, 3, 4, 5]
list_2 = [5, 8, 7, 1, 3, 6]

result = [(i, j) for i in list_1 for j in list_2 if i != j]
print(result)

วิธีที่ 2: ใช้ itertools.product

import itertools

list_1 = [1, 2, 3, 4, 5]
list_2 = [5, 8, 7, 1, 3, 6]

pairs = itertools.product(list_1, list_2)
result = [pair for pair in pairs if pair[0] != pair[1]]
print(result)

สรุป

ทั้งสองวิธีให้ผลลัพธ์เหมือนกัน itertools.product อ่านง่ายกว่าสำหรับ Cartesian product