Daftar Referensi Python

union(), intersection(), dan difference() adalah operasi himpunan ala pelajaran matematika: gabungan, irisan, dan selisih. Masing-masing punya operator singkat: |, &, dan -. Semuanya menghasilkan set baru.

Sintaks

a.union(b)         # atau: a | b  (gabungan)
a.intersection(b)  # atau: a & b  (irisan)
a.difference(b)    # atau: a - b  (selisih)

Ringkasan Operasi

Operasi Operator Hasil
Gabungan (union) a | b semua anggota a dan b
Irisan (intersection) a & b anggota yang ada di keduanya
Selisih (difference) a - b anggota a yang tidak ada di b
Selisih simetris a ^ b anggota salah satu saja (tidak di keduanya)

Contoh

a = {1, 2, 3}
b = {3, 4}

print(sorted(a.union(b)))
print(sorted(a | b))

Coba di IDE

Output:

[1, 2, 3, 4]
[1, 2, 3, 4]

Contoh Lainnya

Kasus nyata: irisan dan selisih anggota kelas

kelas_musik = {"Andi", "Budi", "Citra"}
kelas_robotik = {"Budi", "Dedi"}

print(sorted(kelas_musik & kelas_robotik))
print(sorted(kelas_musik - kelas_robotik))

Coba di IDE

Output:

['Budi']
['Andi', 'Citra']

Budi ikut keduanya (irisan); Andi dan Citra hanya ikut musik (selisih).

Selisih simetris: anggota salah satu saja

a = {1, 2, 3}
b = {3, 4}

print(sorted(a ^ b))

Coba di IDE

Output:

[1, 2, 4]

Kesalahan Umum

  • Mengira operasi ini mengubah set aslinya — semuanya menghasilkan set baru (versi yang mengubah: update(), intersection_update(), dst).
  • Operator |/&/- menuntut dua-duanya set; versi method lebih longgar: a.union([4, 5]) menerima list.
  • a - b tidak sama dengan b - a — selisih itu berarah.

Pelajari Lebih Lanjut