โดย 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))
ผลที่ได้
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))
ผลที่ได้
difference
a.difference(b)
สร้างเซ็ตใหม่ที่มีข้อมูลจากเซ็ต a แต่ข้อมูลนั้นต้องไม่อยู่ในเซ็ต b
โค้ด: เลือกทั้งหมด
a = (1,2,3,3,5)
b = (1,2,4)
print 'a difference b --> ',(set(a)).difference(b)
ผลที่ได้
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)
ผลที่ได้
.
Set ใน python คือ list ที่ข้อมูลไม่ซ้ำกัน
สิ่งที่จะเป็น set ได้ต้องเป็น object ที่มีคุณสมบัติ iterable ได้เท่านั้น
object ที่มีคุณสมบัติ iterable เช่น list, tuple, string, dict
การแปลงข้อมูลเป็น set ใช้คำสั่ง set()
[code]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)
[/code]
ผลที่ได้
[code]a = [1, 2, 3]
b = [1, 2, 3]
c = ['1', '3', '2'] [/code]
[b]issubset[/b]
เช็คว่าเป็นซับเซตของเซตที่กำหนดหรือไม่ ค่าที่ได้จะเป็น Boolean
a.issubset(b) --> ถ้าทุกตัวใน a เป็น b จะ return True
[code]
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))
[/code]
ผลที่ได้
[code]a issubset b --> True
b issubset a --> False
[/code]
[b]issuperset[/b]
เช็คว่าเป็นซูเปอร์เซ็ตของเซ็ตที่กำหนดหรือไม่ ค่าที่ได้เป็น Boolean
a.issuperset(b) --> ถ้าทุกตัวใน b เป็น a จะ return True
[code]
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))
[/code]
ผลที่ได้
[code]a issuperset b --> False
b issuperset a --> True
[/code]
[b]union[/b]
สร้างเซ็ตใหม่ที่มีข้อมูลจากเซ็ตที่นำมารวมกัน
[code]
a = (1,2,3,3)
b = (1,2,3,4)
print 'a union b --> ',(set(a)).union(set(b))
[/code]
ผลที่ได้
[code]a union b --> [1, 2, 3, 4]
[/code]
[b]intersection[/b]
a.intersection(b)
สร้างเซ็ตใหม่ที่มีข้อมูลเหมือนกันจากเซ็ต a และ b
[code]a = (1,2,3,3)
b = (1,2,3,4)
print 'a intersection b --> ',(set(a)).intersection(set(b))[/code]
ผลที่ได้
[code]a intersection b --> [1, 2, 3][/code]
[b]difference[/b]
a.difference(b)
สร้างเซ็ตใหม่ที่มีข้อมูลจากเซ็ต a แต่ข้อมูลนั้นต้องไม่อยู่ในเซ็ต b
[code]a = (1,2,3,3,5)
b = (1,2,4)
print 'a difference b --> ',(set(a)).difference(b)[/code]
ผลที่ได้
[code]a difference b --> [3, 5][/code]
[b]symmetric_difference[/b]
a.symmetric_difference(b)
สร้างเซ็ตใหม่จากเซ็ต a และเซ็ต b แต่ต้องไม่อยู่ในทั้งสองเซ็ต
[code]a = (1,2,3,3,5)
b = (1,2,4)
print 'a symmetric_difference b --> ',(set(a)).symmetric_difference(b)[/code]
ผลที่ได้
[code]a symmetric_difference b --> [3, 4, 5][/code]
.