Set

47 views
Set,5 / 5 ( 1votes )

Set yaitu salah satu tipe data di Python yang tidak berurut (unordered). Set mempunyai anggota yang unik (tidak ada duplikasi). Kaprikornus contohnya kalau kita meletakkan dua anggota yang sama di dalam set, maka otomatis set akan menghilangkan yang salah satunya.

Set sanggup dipakai untuk melaksanakan operasi himpunan matematika menyerupai gabungan, irisan, selisih, dan lain – lain.

Membuat Set

Set dibentuk dengan meletakkan anggota – anggotanya di dalam tanda kurung kurawal { }, dipisahkan memakai tanda koma. Kita juga sanggup menciptakan set dari list dengan memasukkan list ke dalam fungsi set()

Set sanggup berisi data campuran, baik integer, float, string, dan lain sebagainya. Akan tetapi set tidak sanggup berisi list, set, dan dictionary.


# set integer
my_set = {1,2,3}
print(my_set)

# set dengan memakai fungsi set()
my_set = set([1,2,3])
print(my_set)

# set data adonan
my_set = {1, 2.0, "Python", (3,4,5)}
print(my_set)

# bila kita mengisi duplikasi, set akan menghilangkan salah satu
# output: {1,2,3}
my_set = {1,2,2,3,3,3}
print(my_set)

# set tidak sanggup berisi anggota list
# referensi berikut akan muncul error TypeError
my_set = {1,2,[3,4,5]}

Untuk menciptakan set kosong, kita tidak sanggup memakai { }, alasannya yaitu itu akan dianggap sebagai dictionary. Kita harus memakai fungsi set() tanpa argumen untuk menciptakan set kosong.

>>> # menciptakan variabel a dengan {}
>>> a = {}
>>> print(type(a))
<class 'dict'>

>>> # harus memakai fungsi set()
>>> a = set()
>>> print(type(a))
<class 'set'>

Mengubah Anggota Set

Set bersifat mutable. Tapi, alasannya yaitu set yaitu tipe data tidak berurut (unordered), maka kita tidak sanggup memakai indeks. Set tidak mendukung indeks ataupun slicing.

Untuk menambah satu anggota ke dalam set, kita sanggup memakai fungsi add(), dan untuk menambahkan beberapa anggota sekaligus kita sanggup memakai fungsi update(). List, tuple, maupun string sanggup dipakai sebagai masukan dari fungsi update().


# menciptakan set gres
my_set = {1,2,3}
print(my_set)

# bila kita hilangkan tanda # dari baris 9 akan muncul error TypeError
#my_set[0]

# menambah satu anggota
# output: {1,2,3,4}
my_set.add(4)
print(my_set)

# menambah beberapa anggota
# set akan menghilangkan duplikasi
# output: {1,2,3,4,5,6}
my_set.update([3,4,5,6])
print(my_set)

Menghapus Anggota Set

Kita sanggup menghapus anggota set dengan memakai fungsi discard() dan remove(). Perbedaannya, fungsi discard() tidak akan memunculkan error bila anggota yang ingin dihapus ternyata tidak ada di dalam set, sedangkan remove() sebaliknya.


# menciptakan set gres
my_set = {1, 2, 3, 4, 5}
print(my_set)

# menghapus 4 dengan discard
# output: {1, 2, 3, 5}
my_set.discard(4)
print(my_set)

# menghapus 5 dengan remove
# output : {1, 2, 3}
my_set.remove(5)
print(my_set)

# anggota yang mau dihapus tidak ada dalam set
# discard tidak akan memunculkan error
# output: {1, 2, 3}
my_set.discard(6)

Selain discard() dan remove(), kita sanggup menghapus anggota set dengan memakai fungsi pop(). Dengan memakai fungsi pop(), kita menghapus salah satu anggota secara acak (random).

Untuk mengosongkan atau menghapus seluruh anggota set, kita sanggup memakai fungsi clear().


# menciptakan set gres
# output: set berisi anggota yang unik
my_set = set("HelloPython")
print(my_set)

# pop anggota
# output: anggota acak
print(my_set.pop())

# pop anggota lainnya
# output: anggota acak
print(my_set.pop())

# mengosongkan set
# output: set()
my_set.clear()
print(my_set)
 


Operasi Set di Python

Set sanggup dipakai untuk melaksanakan operasi himpunan matematika menyerupai gabungan, irisan, selisih, dan komplemen.

Mari kita ambil dua referensi set berikut:

>>> A = {1, 2, 3, 4, 5}
>>> B = {4, 5, 6, 7, 8}

Operasi Gabungan (Union)

Gabungan (union) dari A dan B yaitu himpunan atau set anggota yang ada di  A dan B.

Gabungan sanggup dibentuk dengan memakai operator palang (|). Selain itu juga sanggup dilakukan dengan memakai fungsi union().

 
# Membuat set A and B
A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}

# Gabungan memakai operator |
# output: {1, 2, 3, 4, 5, 6, 7, 8}
print(A | B)

# Menggunakan fungsi union()
# output: {1, 2, 3, 4, 5, 6, 7, 8}
A.union(B)

# output: {1, 2, 3, 4, 5, 6, 7, 8}
B.union(A)
 

Operasi Irisan (Intersection)

Irisan (intersection) dari A dan B yaitu himpunan atau set anggota yang sama di A dan B.

Irisan dilakukan dengan memakai operator jangkar (&). Irisan juga sanggup dilakukan dengan memakai fungsi intersection().

 
# Membuat set A and B
A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}

# Irisan memakai operator &
# output: {4,5}
print(A & B)
# Menggunakan fungsi intersection()
# output: {4,5}
A.intersection(B)

# output: {4,5}
B.intersection(A)
 

Operasi Selisih (Difference)

Selisih (intersection) dari A dan B yaitu himpunan atau set anggota yang hanya ada di A dan tidak ada di B. Begitu juga sebaliknya, ada di B tapi tidak ada di A.

Selisih dilakukan dengan memakai operator kurang (-). Bisa juga dengan memakai fungsi difference().


# menciptakan A and B
A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}

# Menggunakan operator - pada A
# Output: {1, 2, 3}
print(A - B)

# Output: {1, 2, 3}
A.difference(B)

# Menggunakan operator - pada B
# Output: {8, 6, 7}
print(B - A)

# Output: {8, 6, 7}
B.difference(A)

Operasi Komplemen (Symmetric Difference)

Operasi suplemen (symmetric difference) dari A dan B yaitu himpunan atau set anggota yang ada di A dan di B, tapi tidak di keduanya.

Komplemen dilakukan dengan memakai operator ^. Bisa juga dengan memakai fungsi symmetric_difference().


# menciptakan A and B
A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}

# Menggunakan operator ^ pada A
# Output: {1, 2, 3, 6, 7, 8}
print(A ^ B)

# Output: {1, 2, 3, 6, 7, 8}
A.symmetric_difference(B)

# Menggunakan operator ^ pada B
# Output: {1, 2, 3, 6, 7, 8}
print(B ^ A)

# Output: {1, 2, 3, 6, 7, 8}
B.symmetric_difference(A)


Metode (Fungsi) Set

Set mempunyai banyak metode atau fungsi. Beberapa di antaranya yaitu yang sudah kita gunakan di atas. Tabel berikut berisi daftar metode atau fungsi set yang disediakan oleh python.

Metode Deskripsi
add() Menambahkan satu anggota ke set
clear() Menghapus semua anggota set
copy() Mengembalikan shallow copy dari set
difference() Mengembalikan set gres berisi selisih dua atau lebih set
difference_update() Menghapus semua anggota set lain yang ada di set ini
discard() Menghapus satu anggota dari set
intersection() Mengembalikan set gres berisi irisan antara dua atau lebih set
intersection_update() Mengupdate set dengan irisan set bersangkutan dan set lainnya
isdisjoint() Mengembalikan True jikalau dua set tidak mempunyai irisan
issubset() Mengembalikan True jikalau set lain berisi set ini
issuperset() Mengembalikan True jikalau set ini berisi set lain
pop() Menghapus dan mengembalikan anggota acak dari sebuah set
remove() Menghapus satu anggota dari set
symmetric_difference() Mengembalikan set gres berisi suplemen dari dua set
symmetric_difference_update() Mengupdate set dengan suplemen dari set ini dan set lainnya
union() Mengembalikan set gres berisi gabungan dua atau lebih set
update() Mengupdate set dengan gabungan set ini dan set lainnya

 

Author: 
    author
    No related post!