Skip to content Skip to sidebar Skip to footer

Menggunakan Set di Python


Set adalah collection tak terurut yang ditutup dengan kurung keriting.Elemen di dalam set tidak boleh duplikat (ada yang sama).Elemen dari set juga bersifat immutable.Kalau ada yang duplikat,maka hanya satu yang dianggap.Jadi,set ini sangat bagus untuk menghilangkan duplikat data

Cara membuat set

A = {2,5,8,11}
B = {"Barcelona","Real Madrid","Valencia"}


Set ini merupakan collection yang tidak terurut jadi kalau kita print elemennya tidak akan seperti urutan semula


Tuh,lihat kan nggak urut elemennya kan ?


Tidak seperti collection yang lain,set ini tidak terikat oleh indeks.Jadi,kita tidak bisa mengakses setiap elemen secara langsung.Tapi kita tetap bisa print mereka dengan looping melalui set

Menambah Elemen ke Dalam Set

Python menyediakan method add() untuk menambahkan elemen ke dalam set

Contoh kode :

B = {"Barcelona","Real Madrid","Valencia"}
print("Sebelum add :")
print(B)
B.add("Atletico Madrid")
B.add("Villarreal")
print("Setelah add :")
print(B)
print("Iterasi melalui set :")
for i in B:
    print(i)

Output :
Sebelum add :
{'Valencia', 'Real Madrid', 'Barcelona'}
Setelah add :
{'Barcelona', 'Valencia', 'Real Madrid', 'Villarreal', 'Atletico Madrid'}
Iterasi melalui set :
Barcelona
Valencia
Real Madrid
Villarreal
Atletico Madrid

Sementara itu,kalau kita ingin menambahkan lebih dari satu elemen maka method update() yang digunakan.Berikut contoh cara menggunakannya

Contoh kode :

B = {"Barcelona","Real Madrid","Valencia"}
print("Sebelum update :")
print(B)
B.update(["Atletico Madrid","Villarreal"])#silahkan kasih kurung bebas
print("Setelah update :")
print(B)
print("Iterasi melalui set :")
for i in B:
    print(i)

Output :

Sebelum update :
{'Real Madrid', 'Valencia', 'Barcelona'}
Setelah update :
{'Atletico Madrid', 'Villarreal', 'Real Madrid', 'Valencia', 'Barcelona'}
Iterasi melalui set :
Atletico Madrid
Villarreal
Real Madrid
Valencia
Barcelona

Menghapus Elemen dari Set

Ada 2 method yang bisa digunakan di sini yaitu discard() dan remove()

Contoh penggunaan discard :

B = {"Barcelona","Real Madrid","Valencia","Bilbao"}
print("\nSebelum discard :")#\n untuk baris baru
print(B)
B.discard("Real Madrid")
print("\nSetelah discard :")
print(B)
print("\nIterasi melalui set :")
for i in B:
    print(i)
Output :


Contoh penggunaan remove

B = {"Barcelona","Real Madrid","Valencia","Bilbao"}
print("\nSebelum remove :")#\n untuk baris baru
print(B)
B.remove("Barcelona")
print("\nSetelah remove :")
print(B)
print("\nIterasi melalui set :")
for i in B:
    print(i)
Output :



Perbedaan discard dan remove ?

Kalau item yang ingin kita hapus tidak ada di dalam set,discard() tidak akan memberikan error sedangkan remove() akan memberikan error


Tuh,kan kalau kita pake discard() kode kita tetap jalan meskipun item yang mau kita hapus nggak ada di dalam set.Nah,sekarang bandingkan dengan remove()


Terjadi error di situ karena item yang mau kita hapus nggak ada di dalam set

Oh,ya kita juga bisa menghapus semua elemen dari suatu set dengan method clear()

Contoh :
B = {"Barcelona","Real Madrid","Valencia","Bilbao"}
print("\nSebelum dimodifikasi :")#\n untuk baris baru
print(B)
B.clear()
print("\nSetelah dimodifikasi :")
print(B)
 Output:
 

Menggabungkan 2 Set

menggabungkan 2 set bisa menggunakan method union() kalau di himpunan ini adalah A∪B 

Contoh :
A = {"Anjing","Kucing"}
B = {"Ayam","Itik"}
print(A.union(B))
Output :
{'Kucing', 'Anjing', 'Itik', 'Ayam'}

Irisan 2 Set

Irisan merupakan item dari set pertama yang juga ada di set kedua.Untuk mendapatkan irisan bisa memakai method intersection().Kalau di himpunan,ini adalah A∩B


Contoh :
A = {"Anjing","Kucing","Dara","Kelinci"}
B = {"Ayam","Itik","Dara","Kelinci"}
print(A.intersection(B))
Output :
{'Dara', 'Kelinci'}
method intersection_update() tidak hanya mengiris 2 set tapi juga memodifikasi set awal

Contoh :
A = {"Anjing","Kucing","Dara","Kelinci"}
B = {"Ayam","Itik","Dara","Kelinci"}
A.intersection(B)
print(A)
Output :
{'Anjing', 'Dara', 'Kucing', 'Kelinci'}
Kalau kita pake intersection() set awal (di sini A) tidak akan berubah

Contoh :
A = {"Anjing","Kucing","Dara","Kelinci"}
B = {"Ayam","Itik","Dara","Kelinci"}
A.intersection_update(B)
print(A)
Output :
{'Kelinci', 'Dara'}

Perbedaan 2 Set

Untuk mengetahui item dari set pertama yang tidak ada di set yang kedua kita bisa memakai 2 cara yaitu operator - dan method difference()
Contoh operator - :
A = {"Anjing","Kucing","Dara","Kelinci"}
B = {"Ayam","Itik","Dara","Kelinci"}
print(A-B)
Output :
{'Kucing', 'Anjing'}
Contoh method difference():
A = {"Anjing","Kucing","Dara","Kelinci"}
B = {"Ayam","Itik","Dara","Kelinci"}
print(A.difference(B))
Output :
{'Kucing', 'Anjing'}

Membandingkan 2 Set

Python mengizinkan kita menggunakan operator perbandingan (<.>,<=,>=,==) di dalam set untuk mengecek apakah suatu set menjadi subset, superset atau ekuivalen dengan set yang lain.Kembalian true dan false bergantung pada item yang ada pada kedua set

Contoh :
A = {"Merah","Biru","Kuning","Hitam","Putih"}B = {"Biru","Merah","Hitam"}C = {"Biru","Hitam","Merah"}print(A>B)#True karena A superset dari Bprint(A<B)#False karena B bukan superset dari Aprint(B==C)#True karena item B dan C sama 
Output :
True
False
True

Method Lain Untuk Set di Python

 

copy() menyalin set
difference_update(...) mengubah set awal dengan menghapus semua elemen yang juga ada di set yang ditentukan
Isdisjoint(...) mengembalikan True jika dua set tidak ada irisannya
Issubset(...) mengecek apakah suatu set adalah subset dari set yang ditentukan
Issuperset(...) mengecek apakah suatu set adalah superset dari set yang ditentukan
pop() mengembalikan dan menghapus elemen terakhir set
symmetric_difference() mengembalikan irisan suatu set dengan set yang lain
symmetric_difference_update() mengubah elemen set awal dengan elemen set lain yang tidak ada di set awal
Download Python untuk berbagai macam sistem operasi di SINI
IDE online untuk Python bisa ke SINI untuk mengetes kode tanpa install python di komputer

 




 


Post a Comment for "Menggunakan Set di Python"