Metode dict.update()_ dapat dipanggil dengan kamus lain atau iterable dari pasangan kunci-nilai (e. g. daftar tupel dengan masing-masing 2 elemen)
Anda juga dapat meneruskan argumen kata kunci ke metode dict.update()
Sebagai alternatif, Anda dapat menggunakan kamus membongkar operator **
Ganti nilai dalam kamus menggunakan pembongkaran kamus
Untuk mengganti nilai dalam kamus
- Gunakan operator pembongkaran kamus untuk membongkar pasangan kunci-nilai ke dalam kamus baru
- Tentukan kunci dengan nilai yang diperbarui
- Nilai baru akan menimpa nilai kunci yang ada
Kami menggunakan operator pembongkaran kamus ** untuk membongkar pasangan kunci-nilai kamus ke dalam kamus baru
Diberi kamus dengan Python, tugasnya adalah menulis program Python untuk mengubah nilai di salah satu pasangan kunci-nilai. Artikel ini membahas mekanisme untuk melakukannya secara efektif
Contoh
Input: {'hari': 1, 'dita': 2} Output: {'hari': 1, 'dita': 4} Input: {'hari': 1, 'dita': 2} Output: {'hari': 3, 'dita': 5}Mengubah Nilai Kamus
Metode 1
Dalam hal ini kami mengacu pada kunci nilai yang akan diubah dan melengkapinya dengan nilai baru
Contoh
Python3
# declaring dictionary
dict = {'hari':1,'dita':________31______1# declaring dictionary2
# declaring dictionary3
# declaring dictionary4
# declaring dictionary5# declaring dictionary6# declaring dictionary7,dictdict0
# declaring dictionary3
dict_2
dictdict4'dita'dict6= dict8
# declaring dictionary3
=0
# declaring dictionary5# declaring dictionary6=3,dictdict0
Keluaran
kamus awal- {'hari'. 1, 'dita'. 2}
kamus setelah modifikasi- {‘hari’. 1, 'dita'. 4}
Metode 2.
Dalam metode ini kami menggunakan fungsi zip(), yang menggabungkan iterable dan menggabungkannya ke dalam bentuk tuple
Contoh
Python3
# declaring dictionary
________33______8= {'hari':1,'dita':________31______1# declaring dictionary2
Jika Anda ingin mengubah nilainya, tentukan saja kuncinya dan tetapkan nilai baru. Lihat artikel berikut untuk detailnya
- Gabungkan beberapa kamus dan tambahkan item ke kamus dengan Python
Tautan Bersponsor
Tambahkan item baru lalu hapus yang lama
d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} 3 tidak memiliki metode untuk mengubah kunci, jadi tambahkan item baru dengan kunci baru dan nilai asli, lalu hapus item lama
Untuk informasi selengkapnya tentang cara menghapus item dari kamus, lihat artikel berikut ini
- Hapus item dari kamus dengan Python (clear, pop, popitem, del)
Dengan d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _4 pernyataan
Jika Anda menggunakan pernyataan d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _4, Anda dapat melakukan hal berikut
d = {'k1': 1, 'k2': 2, 'k3': 3} d['k10'] = d['k1'] del d['k1'] print(d) # {'k2': 2, 'k3': 3, 'k10': 1} _
sumber.
Dengan metode d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _5
Metode d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} 5 dapat digunakan untuk menghapus item dan mendapatkan nilainya secara bersamaan
d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _
sumber.
Menggunakan d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _5 lebih sederhana daripada menggunakan d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} 4
d = {'k1': 1, 'k2': 2, 'k3': 3} d['k10'] = d.pop('k1') print(d) # {'k2': 2, 'k3': 3, 'k10': 1}
sumber.
Perhatikan bahwa secara default, kesalahan terjadi jika kunci yang tidak ada ditentukan sebagai argumen pertama dari d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} 5
d = {'k1': 1, 'k2': 2, 'k3': 3} # print(d.pop('k10')) # KeyError: 'k10'
sumber.
Jika argumen kedua d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _5 ditentukan, ia mengembalikan nilai tanpa kesalahan. Objek kamus asli tetap tidak berubah
print(d.pop('k10', None)) # None print(d) # {'k1': 1, 'k2': 2, 'k3': 3}
sumber.
Ini dapat digunakan untuk menetapkan nilai default jika Anda mencoba mengubah kunci yang tidak ada. Ini digunakan dalam fungsi yang dijelaskan selanjutnya
Tentukan fungsi untuk mengubah kunci kamus
Berikut adalah beberapa contoh fungsi untuk mengubah kunci kamus
Jika kunci lama tidak ada, tambahkan item baru
Dengan d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _5, misalnya, fungsi berikut dapat didefinisikan
Argumen pertama adalah kamus target, yang kedua adalah kunci lama, dan yang ketiga adalah kunci baru
def change_dict_key(d, old_key, new_key, default_value=None): d[new_key] = d.pop(old_key, default_value) d = {'k1': 1, 'k2': 2, 'k3': 3} change_dict_key(d, 'k1', 'k10') print(d) # {'k2': 2, 'k3': 3, 'k10': 1}
sumber.
Jika kunci yang tidak ada ditentukan sebagai kunci lama, itu ditambahkan sebagai item baru dengan nilai yang ditentukan dalam argumen keempat (d = {'k1': 1, 'k2': 2, 'k3': 3} d['k10'] = d.pop('k1') print(d) # {'k2': 2, 'k3': 3, 'k10': 1} 6 secara default)
d = {'k1': 1, 'k2': 2, 'k3': 3} change_dict_key(d, 'k10', 'k100') print(d) # {'k1': 1, 'k2': 2, 'k3': 3, 'k100': None} d = {'k1': 1, 'k2': 2, 'k3': 3} change_dict_key(d, 'k10', 'k100', 100) print(d) # {'k1': 1, 'k2': 2, 'k3': 3, 'k100': 100}
sumber.
Jika kunci yang ada ditentukan sebagai argumen ketiga (kunci baru), nilai kunci yang ada akan ditimpa
d = {'k1': 1, 'k2': 2, 'k3': 3} change_dict_key(d, 'k1', 'k2') print(d) # {'k2': 1, 'k3': 3}
sumber.
Jika Anda ingin mempertahankan nilai asli saat menentukan kunci yang ada sebagai kunci baru, gunakan metode d = {'k1': 1, 'k2': 2, 'k3': 3} d['k10'] = d.pop('k1') print(d) # {'k2': 2, 'k3': 3, 'k10': 1} 7
- Tambahkan item hanya jika kuncinya tidak ada di dict di Python (setdefault())
def change_dict_key_setdefault(d, old_key, new_key, default_value=None): d.setdefault(new_key, d.pop(old_key, default_value)) d = {'k1': 1, 'k2': 2, 'k3': 3} change_dict_key_setdefault(d, 'k1', 'k2') print(d) # {'k2': 2, 'k3': 3}
sumber.
Jika kunci baru bukan kunci yang sudah ada, perilakunya sama dengan fungsi pertama
d = {'k1': 1, 'k2': 2, 'k3': 3} change_dict_key_setdefault(d, 'k1', 'k10') print(d) # {'k2': 2, 'k3': 3, 'k10': 1} d = {'k1': 1, 'k2': 2, 'k3': 3} change_dict_key_setdefault(d, 'k10', 'k100') print(d) # {'k1': 1, 'k2': 2, 'k3': 3, 'k100': None}
sumber.
Jika kunci lama tidak ada, jangan lakukan apa pun
Jika Anda tidak ingin melakukan apa pun saat kunci yang ditentukan tidak ada, gunakan operator d = {'k1': 1, 'k2': 2, 'k3': 3} d['k10'] = d.pop('k1') print(d) # {'k2': 2, 'k3': 3, 'k10': 1} 8
- di operator dengan Python (untuk daftar, string, kamus, dll. )
d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _0
sumber.
Jika kunci yang ada ditentukan sebagai argumen ketiga (kunci baru), nilai kunci yang ada akan ditimpa
d = {'k1': 1, 'k2': 2, 'k3': 3} print(d.pop('k1')) # 1 print(d) # {'k2': 2, 'k3': 3} _1
sumber.
Seperti pada contoh di atas, jika Anda ingin mempertahankan nilai asli saat menentukan kunci yang ada sebagai kunci baru, gunakan metode d = {'k1': 1, 'k2': 2, 'k3': 3} d['k10'] = d.pop('k1') print(d) # {'k2': 2, 'k3': 3, 'k10': 1} 7