Skip to main content

Dictionary Methods 2

Pada materi sebelumnya, kita telah mempelajari beberapa cara untuk mengakses data dalam dictionary menggunakan [] dan .get().

Pada materi ini, kita akan melanjutkan dengan beberapa method dictionary yang digunakan untuk:

  • Memeriksa keberadaan key dan value.
  • Mengambil seluruh key, value, atau pasangan data.
  • Menyalin dictionary.
  • Menghapus data.
  • Mengubah dan menambahkan data.

1. Memeriksa Keberadaan Key dengan in

Keyword in dapat digunakan untuk memeriksa apakah sebuah key terdapat di dalam dictionary.

Contohnya:

user = {
"basket": [1, 2, 3],
"greet": "hello",
"age": 20
}

print("basket" in user)
print("size" in user)

Hasil:

True
False

Secara default, in pada dictionary memeriksa key, bukan value.


2. Menggunakan .keys()

Method .keys() digunakan untuk mendapatkan seluruh key yang terdapat di dalam dictionary.

Contohnya:

user = {
"basket": [1, 2, 3],
"greet": "hello",
"age": 20
}

print(user.keys())

Hasilnya berupa objek dict_keys.

Untuk memeriksa apakah key tertentu tersedia:

print("age" in user.keys())

Hasil:

True

Namun, dalam penggunaan sehari-hari, kita biasanya cukup menggunakan:

print("age" in user)

3. Menggunakan .values()

Jika .keys() digunakan untuk mendapatkan key, maka .values() digunakan untuk mendapatkan seluruh value.

Contohnya:

user = {
"basket": [1, 2, 3],
"greet": "hello",
"age": 20
}

print(user.values())

Untuk memeriksa apakah sebuah value terdapat di dalam dictionary:

print("hello" in user.values())

Hasil:

True

Contoh lainnya:

print(20 in user.values())

Hasil:

True

4. Perbedaan in pada Key dan Value

Perhatikan contoh berikut:

user = {
"name": "Andi",
"age": 25
}

Jika menggunakan:

print("name" in user)

Python memeriksa key.

Hasil:

True

Sedangkan:

print("Andi" in user)

hasilnya:

False

Karena "Andi" merupakan value, bukan key.

Untuk memeriksa value:

print("Andi" in user.values())

Hasil:

True

5. Menggunakan .items()

Method .items() digunakan untuk mendapatkan seluruh pasangan key-value.

Contohnya:

user = {
"basket": [1, 2, 3],
"greet": "hello",
"age": 20
}

print(user.items())

Hasilnya berupa objek dict_items yang berisi pasangan key-value:

dict_items([
("basket", [1, 2, 3]),
("greet", "hello"),
("age", 20)
])

Setiap pasangan direpresentasikan sebagai tuple.

Contohnya:

("age", 20)

6. Perbandingan .keys(), .values(), dan .items()

MethodMenghasilkan
.keys()Seluruh key
.values()Seluruh value
.items()Seluruh pasangan key-value

Contohnya:

user = {
"name": "Andi",
"age": 25
}

.keys()

print(user.keys())

Secara konsep:

name
age

.values()

print(user.values())

Secara konsep:

Andi
25

.items()

print(user.items())

Secara konsep:

("name", "Andi")
("age", 25)

7. Menghapus Seluruh Data dengan .clear()

Method .clear() digunakan untuk menghapus seluruh isi dictionary.

Contohnya:

user = {
"name": "Andi",
"age": 25
}

user.clear()

print(user)

Hasil:

{}

Method .clear() bekerja secara in-place, sehingga dictionary yang sama menjadi kosong.


8. Menyalin Dictionary dengan .copy()

Method .copy() digunakan untuk membuat salinan dictionary.

Contohnya:

user = {
"name": "Andi",
"age": 25
}

user2 = user.copy()

Sekarang terdapat dua dictionary:

user

{"name": "Andi", "age": 25}

user2

{"name": "Andi", "age": 25}

Keduanya merupakan dictionary yang berbeda.


9. Membuktikan Hasil .copy()

user = {
"name": "Andi",
"age": 25
}

user2 = user.copy()

user.clear()

print(user)
print(user2)

Hasil:

{}
{"name": "Andi", "age": 25}

Perubahan pada user tidak mengosongkan user2.


10. Perbedaan .copy() dengan Assignment

Perhatikan kode berikut:

user = {
"name": "Andi"
}

user2 = user

Dalam kasus ini, user dan user2 merujuk pada dictionary yang sama.

Jika:

user.clear()

maka:

print(user2)

juga menghasilkan:

{}

Jika ingin membuat dictionary terpisah, gunakan:

user2 = user.copy()

11. Menghapus Data dengan .pop()

Method .pop() digunakan untuk menghapus item berdasarkan key.

Contohnya:

user = {
"name": "Andi",
"age": 25,
"city": "Palu"
}

user.pop("age")

print(user)

Hasil:

{"name": "Andi", "city": "Palu"}

Key "age" beserta value-nya telah dihapus.


12. .pop() Mengembalikan Value yang Dihapus

Salah satu karakteristik penting .pop() adalah method ini mengembalikan value yang dihapus.

Contohnya:

user = {
"name": "Andi",
"age": 25,
"city": "Palu"
}

removed_value = user.pop("age")

print(removed_value)

Hasil:

25

Dictionary sekarang:

print(user)

Hasil:

{"name": "Andi", "city": "Palu"}

Dengan demikian, .pop() dapat digunakan ketika kita ingin menghapus sekaligus mendapatkan value yang dihapus.


13. Menghapus Item dengan .popitem()

Method .popitem() digunakan untuk menghapus dan mengembalikan satu pasangan key-value.

Pada Python modern, .popitem() menghapus item terakhir yang dimasukkan.

Contohnya:

user = {
"name": "Andi",
"age": 25,
"city": "Palu"
}

removed_item = user.popitem()

print(removed_item)
print(user)

Hasil:

("city", "Palu")
{"name": "Andi", "age": 25}

Pasangan terakhir:

"city": "Palu"

telah dihapus.


14. Perbedaan .pop() dan .popitem()

MethodCara MenghapusReturn
.pop(key)Berdasarkan keyValue
.popitem()Item terakhirTuple (key, value)
.clear()Semua itemNone

Contohnya:

user.pop("age")

menghapus berdasarkan key.

Sedangkan:

user.popitem()

menghapus item terakhir.


15. Mengubah Data dengan .update()

Method .update() digunakan untuk memperbarui dictionary.

Jika key sudah ada, value akan diperbarui.

Contohnya:

user = {
"name": "Andi",
"age": 20
}

user.update({
"age": 25
})

print(user)

Hasil:

{"name": "Andi", "age": 25}

Value "age" berubah dari:

20

menjadi:

25

16. Menambahkan Data dengan .update()

Jika key belum tersedia, .update() akan menambahkan key-value baru.

Contohnya:

user = {
"name": "Andi",
"age": 25
}

user.update({
"city": "Palu"
})

print(user)

Hasil:

{
"name": "Andi",
"age": 25,
"city": "Palu"
}

Jadi .update() dapat digunakan untuk:

Key sudah ada

Update value

Key belum ada

Tambah key-value

17. .update() dengan Dictionary

Cara yang umum adalah memberikan dictionary sebagai argument:

user.update({
"age": 30,
"city": "Palu"
})

Contohnya:

user = {
"name": "Andi",
"age": 25
}

user.update({
"age": 30,
"city": "Palu"
})

print(user)

Hasil:

{
"name": "Andi",
"age": 30,
"city": "Palu"
}

age diperbarui, sedangkan city ditambahkan.


18. Ringkasan Method Dictionary

MethodFungsi
.keys()Mengambil seluruh key
.values()Mengambil seluruh value
.items()Mengambil seluruh pasangan key-value
.copy()Membuat salinan dictionary
.clear()Menghapus seluruh isi
.pop(key)Menghapus berdasarkan key
.popitem()Menghapus item terakhir
.update()Mengubah atau menambahkan data

19. Contoh Lengkap

user = {
"name": "Andi",
"age": 25,
"city": "Palu"
}

# Memeriksa key
print("name" in user)

# Memeriksa value
print("Andi" in user.values())

# Mengambil semua key
print(user.keys())

# Mengambil semua value
print(user.values())

# Mengambil semua pasangan
print(user.items())

# Mengubah data
user.update({
"age": 26
})

# Menambahkan data
user.update({
"is_active": True
})

print(user)

20. Kesimpulan

Dictionary menyediakan berbagai method untuk mengelola data.

Untuk memeriksa data, gunakan:

"key" in user

atau:

"value" in user.values()

Untuk melihat struktur dictionary, gunakan:

user.keys()
user.values()
user.items()

Untuk menyalin:

user.copy()

Untuk menghapus:

user.pop("key")
user.popitem()
user.clear()

Untuk mengubah atau menambahkan data:

user.update({
"key": "value"
})
info

Poin penting: .pop() menghapus berdasarkan key dan mengembalikan value yang dihapus, .popitem() menghapus item terakhir dan mengembalikan pasangan key-value, sedangkan .update() dapat digunakan untuk mengubah data yang sudah ada maupun menambahkan data baru.