Skip to content
หน้าแรก » เขียนโปรแกรมภาษา Python ตอนที่ 100 การ Join ข้อมูลใน Set

เขียนโปรแกรมภาษา Python ตอนที่ 100 การ Join ข้อมูลใน Set

การ Join ข้อมูลใน Set

เขียนโปรแกรมภาษา Python ตอนที่ 100 การ Join ข้อมูลใน Set

ถ้ามีข้อมูลประเภท Set ตั้งแต่ 2 ชุดขึ้นไป เราสามารถนำ Set เหล่านั้นมารวมกันได้หลายวิธีด้วยกัน

การจอย Set ด้วยเมธอด union() หรือเมธอด update()

เราสามารถจอยหรือรวม Set ตั้งแต่ 2 ชุดขึ้นไปเข้าด้วยกัน ด้วยเมธอด union() ซึ่งจะได้ Set ใหม่ที่รวมเอาสมาชิกของ Set ทั้งหมดเข้าด้วยกัน

apple = {"iPhone", "iPad", "iPod", "Mac OS"}

android = {"Vivo", "Oppo", "Wiko"}

phone = apple.union(android)

print(phone)

ถ้าจอย 2 Set ขึ้นไป ให้ใช้เครื่องหมายคอมม่า , คั่น

apple = {"iPhone", "iPad", "iPod", "Mac OS"}

windows = {"Windows 11", "Windows 10"}

android = {"Vivo", "Oppo", "Wiko"}

items = apple.union(android, windows)

print(items)

หรือจะใช้เมธอด update() ก็ได้ ซึ่งจะเป็นการนำสมาชิกจาก Set ชุดหนึ่งเข้าไปรวมไว้กับ Set อีกชุด

item1 = {"iPhone", "iPad", "iPod", "Mac OS"}

item2 = {"Vivo", "Oppo", "Wiko"}

item1.update(item2)

print(item1)

ถ้าจอย 2 Set ขึ้นไป ให้ใช้เครื่องหมายคอมม่า , คั่น

item1 = {"iPhone", "iPad", "iPod", "Mac OS"}

item2 = {"Vivo", "Oppo", "Wiko"}

item3 = {"Windows 10", "Windows 11"}

item1.update(item2, item3)

print(item1)

ถ้ามีข้อมูลที่ซ้ำกัน ทั้งเมธอด union() และ update() จะนำข้อมูลที่ซ้ำกันออกให้เหลือแค่อันเดียว

item1 = {"iPhone", "iPad", "iPod", "iPod", "Mac OS"}

item2 = {"Vivo", "Oppo", "Wiko", "Wiko"}

item1.update(item2)

print(item1)

การจอยเฉพาะข้อมูลที่เหมือนกัน

ถ้าต้องการจอย Set ตั้งแต่ 2 ชุดขึ้นไป โดยให้คัดเอาเฉพาะข้อมูลที่มีอยู่ในทุก Set สามารถทำได้โดยใช้เมธอด intersection_update()

item1 = {"iPhone", "iPad", "iPod", "iPod", "Mac OS"}

item2 = {"iPad", "Oppo", "Wiko", "iPhone"}

item1.intersection_update(item2)

print(item1)
item1 = {"iPhone", "iPad", "iPod", "iPod", "Mac OS"}

item2 = {"iPad", "Oppo", "Wiko", "iPhone"}

item3 = {"Oppo", "Wiko", "iPhone"}

item1.intersection_update(item2, item3)

print(item1)

หรือจะใช้เมธอด intersection() ก็ได้ โดยจะได้ผลลัพธ์เป็น Set ใหม่ที่เก็บเฉพาะข้อมูลที่เหมือนกันในทุก Set

item1 = {"iPhone", "iPad", "iPod", "iPod", "Mac OS"}

item2 = {"iPad", "Oppo", "Wiko", "iPhone"}

myitems = item1.intersection(item2)

print(myitems)
item1 = {"iPhone", "iPad", "iPod", "iPod", "Mac OS"}

item2 = {"iPad", "Oppo", "Wiko", "iPhone"}

item3 = {"Oppo", "Wiko", "iPhone"}

myitems = item1.intersection(item2, item3)

print(myitems)

การจอยเฉพาะข้อมูลที่ไม่เหมือนกัน

ถ้าต้องการเฉพาะข้อมูลที่ไม่เหมือนกันในทุก Set สามารถทำได้โดยใช้เมธอด symmetric_difference_update() โดยจะได้ผลลัพธ์เป็นข้อมูลที่ไม่ซ้ำกันในทุก Set

item1 = {"iPhone", "iPad", "iPod", "iPod", "Mac OS"}

item2 = {"iPad", "Oppo", "Wiko", "iPhone"}

item1.symmetric_difference_update(item2)

print(item1)

หรือจะใช้เมธอด symmetric_difference() ก็ได้ โดยจะได้ผลลัพธ์เป็น Set ใหม่ ที่เก็บข้อมูลที่ไม่ซ้ำกันในทุก Set

item1 = {"iPhone", "iPad", "iPod", "iPod", "Mac OS"}

item2 = {"iPad", "Oppo", "Wiko", "iPhone"}

myitem = item1.symmetric_difference(item2)

print(myitem)