Python - ตัวแปรชนิด Set

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: Python - ตัวแปรชนิด Set

Re: Python - ตัวแปรชนิด Set

โดย mindphp » 25/09/2019 9:09 pm

สำหรับการคำนวณ ประโยชน์มาก

Python - ตัวแปรชนิด Set

โดย chbbk » 21/03/2015 7:02 pm

Set ใน python คือ list ที่ข้อมูลไม่ซ้ำกัน
สิ่งที่จะเป็น set ได้ต้องเป็น object ที่มีคุณสมบัติ iterable ได้เท่านั้น
object ที่มีคุณสมบัติ iterable เช่น list, tuple, string, dict


การแปลงข้อมูลเป็น set ใช้คำสั่ง set()

โค้ด: เลือกทั้งหมด

a = [1, 2, 3, 3]
b = (1, 2, 3, 3, 3)
c = "123333"
print 'a =',set(a)
print 'b = ',set(b)
print 'c = ',set(c)
ผลที่ได้

โค้ด: เลือกทั้งหมด

a = [1, 2, 3]
b = [1, 2, 3]
c = ['1', '3', '2'] 
issubset
เช็คว่าเป็นซับเซตของเซตที่กำหนดหรือไม่ ค่าที่ได้จะเป็น Boolean
a.issubset(b) --> ถ้าทุกตัวใน a เป็น b จะ return True

โค้ด: เลือกทั้งหมด

a = (1,2,3,3)
b = (1,2,3,4)
print 'a issubset b --> ',(set(a)).issubset(set(b))
print 'b issubset a --> ',(set(b)).issubset(set(a))
ผลที่ได้

โค้ด: เลือกทั้งหมด

a issubset b -->  True
b issubset a -->  False
issuperset
เช็คว่าเป็นซูเปอร์เซ็ตของเซ็ตที่กำหนดหรือไม่ ค่าที่ได้เป็น Boolean
a.issuperset(b) --> ถ้าทุกตัวใน b เป็น a จะ return True

โค้ด: เลือกทั้งหมด

a = (1,2,3,3)
b = (1,2,3,4)
print 'a issuperset b --> ',(set(a)).issuperset(set(b))
print 'b issuperset a --> ',(set(b)).issuperset(set(a))
ผลที่ได้

โค้ด: เลือกทั้งหมด

a issuperset b -->  False
b issuperset a -->  True
union
สร้างเซ็ตใหม่ที่มีข้อมูลจากเซ็ตที่นำมารวมกัน

โค้ด: เลือกทั้งหมด

a = (1,2,3,3)
b = (1,2,3,4)
print 'a union b --> ',(set(a)).union(set(b))
ผลที่ได้

โค้ด: เลือกทั้งหมด

a union b -->  [1, 2, 3, 4]
intersection
a.intersection(b)
สร้างเซ็ตใหม่ที่มีข้อมูลเหมือนกันจากเซ็ต a และ b

โค้ด: เลือกทั้งหมด

a = (1,2,3,3)
b = (1,2,3,4)
print 'a intersection b --> ',(set(a)).intersection(set(b))
ผลที่ได้

โค้ด: เลือกทั้งหมด

a intersection b -->  [1, 2, 3]
difference
a.difference(b)
สร้างเซ็ตใหม่ที่มีข้อมูลจากเซ็ต a แต่ข้อมูลนั้นต้องไม่อยู่ในเซ็ต b

โค้ด: เลือกทั้งหมด

a = (1,2,3,3,5)
b = (1,2,4)
print 'a difference b --> ',(set(a)).difference(b)
ผลที่ได้

โค้ด: เลือกทั้งหมด

a difference b -->  [3, 5]
symmetric_difference
a.symmetric_difference(b)
สร้างเซ็ตใหม่จากเซ็ต a และเซ็ต b แต่ต้องไม่อยู่ในทั้งสองเซ็ต

โค้ด: เลือกทั้งหมด

a = (1,2,3,3,5)
b = (1,2,4)
print 'a symmetric_difference b --> ',(set(a)).symmetric_difference(b)
ผลที่ได้

โค้ด: เลือกทั้งหมด

a symmetric_difference b --> [3, 4, 5]
.

ข้างบน