Python Set

Python set adalah unordered collection of unique, immutable objects atau kolesi objek yang unik dan tidak diubah dan tidak ada aturan susunan/urutan. Berikut syntaxnya s = {value1, value2, value3, value4}

Untuk membuat empty set gunakan constructor set(). Set juga dapat dibuat dari list dengan menggunakan constructor set()

>>> s = {44, 2, 81, 3, 52, 1}
>>> s
{1, 2, 3, 44, 81, 52}
>>> e = set()
>>> type(e)
>>> s = set([2, 7, 20, 34, 41, 123])
>>> s
{2, 34, 7, 41, 20, 123}

Karena set bersifat unique, maka duplicate item akan dibuang

>>> t = [1, 1, 3, 3, 7, 7]
>>> u = set(t)
>>> u
{1, 3, 7}
>>>

Set juga iterable, namun tidak ada aturan urutan/order

>>> for x in s:
...     print(x)
...
2
34
7
41
20
123

Untuk menguji apakah suatu item ada dalam set, gunakan operator in atau not in.

>>> 2 in s
True
>>> 2 not in s
False

Menambah item pada set, gunakan method add(). Bila kita menambahkan item yang sudah ada, akan diabaikan oleh python (tidak ada error message)

>>> x = {22, 109}
>>> x
{109, 22}
>>> x.add(1)
>>> x
{1, 109, 22}
>>>

Untuk menambahkan lebih dari satu item pada set, gunakan update() method. Pada contoh dibawah, update

>>> x = {100, 200, 300}
>>> x
{200, 100, 300}
>>> x.update([400, 500])
>>> x
{100, 200, 300, 400, 500}
>>>

Untuk menghapus gunakan remove(item) methode, pastikan item yang akan dibuang ada, bila tidak akan runtime error. Cara kedua dapat digunakan discard(item) methode, untuk discard tidak terjadi error bila menghapus item yang tidak ada.

>>> x
{100, 200, 300, 400, 500}
>>> x.remove(400)
>>> x
{100, 200, 300, 500}
>>> x.remove(600)
Traceback (most recent call last):
  File "", line 1, in 
KeyError: 600
>>> x.discard(200)
>>> x
{100, 300, 500}
>>> x.discard(600)
>>> x
{100, 300, 500}

Seperti collection lainnya, set juga dapat dicopy (shallow copy) dengan menggunakan method .copy() atau set() constructor

>>> k = {3, 5, 9, 12, 2, 99}
>>> j = k.copy()
>>> j
{2, 3, 99, 5, 9, 12}
>>> l = set(j)
>>> l
{2, 3, 99, 5, 9, 12}
>>> l
Sharing is caring: