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

Python – การจับคู่ข้ามใน Tuple List


เมื่อจำเป็นต้องทำการจับคู่ข้ามกันในรายการทูเพิล จะใช้เมธอด 'zip', list comprehension และโอเปอเรเตอร์ '=='

ตัวอย่าง

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

my_list_1 = [('Hi', 'Will'), ('Jack', 'Python'), ('Bill', 'Mills'), ('goodwill', 'Jill')]
my_list_2 = [('Hi', 'Band'), ('Jack', 'width'), ('Bill', 'cool'), ('a', 'b')]
print("The first list is : " )
print(my_list_1)
print("The second list is :")
print(my_list_2)

my_list_1.sort()
my_list_2.sort()
print("The first list after sorting is ")
print(my_list_1)
print("The second list after sorting is ")
print(my_list_2)

my_result = [(a[1], b[1]) for a, b in zip(my_list_1, my_list_2) if a[0] == b[0]]
print("The resultant list is : ")
print(my_result)

ผลลัพธ์

The first list is :
[('Hi', 'Will'), ('Jack', 'Python'), ('Bill', 'Mills'), ('goodwill', 'Jill')]
The second list is :
[('Hi', 'Band'), ('Jack', 'width'), ('Bill', 'cool'), ('a', 'b')]
The first list after sorting is
[('Bill', 'Mills'), ('Hi', 'Will'), ('Jack', 'Python'), ('goodwill', 'Jill')]
The second list after sorting is
[('Bill', 'cool'), ('Hi', 'Band'), ('Jack', 'width'), ('a', 'b')]
The resultant list is :
[('Mills', 'cool'), ('Will', 'Band'), ('Python', 'width')]

คำอธิบาย

  • มีการกำหนดรายการทูเพิลสองรายการ และแสดงบนคอนโซล

  • รายการทั้งสองนี้จะเรียงลำดับจากน้อยไปหามาก และแสดงบนคอนโซล

  • tuples สองรายการถูกบีบอัดและวนซ้ำ

  • ทำได้โดยใช้การทำความเข้าใจรายการ

  • ที่นี่จะเปรียบเทียบองค์ประกอบที่เกี่ยวข้องของทั้งสองรายการ

  • หากเท่ากัน จะถูกเก็บไว้ในรายการและกำหนดให้กับตัวแปร

  • ซึ่งจะแสดงเป็นเอาต์พุตบนคอนโซล