Kamus Bersarang Python (Dengan Contoh)

Dalam artikel ini, anda akan belajar mengenai kamus bersarang di Python. Lebih khusus lagi, anda akan belajar membuat kamus bersarang, mengakses elemen, mengubah suai dan sebagainya dengan bantuan contoh.

Di Python, kamus adalah koleksi item yang tidak tersusun. Sebagai contoh:

 kamus = ('kunci': 'nilai', 'kunci_2': 'nilai_2')

Di sini, kamus mempunyai key:valuepasangan tertutup dalam kurungan keriting ().

Untuk mengetahui lebih lanjut mengenai kamus, sila lawati Kamus Python.

Apakah Kamus Bersarang di Python?

Di Python, kamus bersarang adalah kamus di dalam kamus. Ini adalah koleksi kamus ke dalam satu kamus.

 nested_dict = ('dictA': ('key_1': 'value_1'),'ictB ': (' key_2 ':' value_2 '))

Di sini, nested_dict adalah kamus bersarang dengan kamus dictAdan dictB. Mereka adalah dua kamus yang masing-masing mempunyai kunci dan nilai tersendiri.

Buat Kamus Bersarang

Kami akan membuat kamus orang dalam kamus.

Contoh 1: Cara membuat kamus bersarang

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) print(people)

Apabila kita menjalankan program di atas, ia akan menghasilkan:

 (1: ('nama': 'John', 'usia': '27', 'seks': 'Lelaki'), 2: ('nama': 'Marie', 'usia': '22', 'seks ':' Perempuan '))

Dalam program di atas, orang adalah kamus bersarang. Kamus dalaman 1dan 2diberikan kepada orang. Di sini, kedua-dua kamus mempunyai kunci name, age, sexdengan nilai-nilai yang berbeza. Sekarang, kami mencetak hasil carian orang.

Akses elemen Kamus Bersarang

Untuk mengakses elemen kamus bersarang, kami menggunakan ()sintaks pengindeksan di Python.

Contoh 2: Akses elemen menggunakan sintaks ()

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) print(people(1)('name')) print(people(1)('age')) print(people(1)('sex'))

Apabila kita menjalankan program di atas, ia akan menghasilkan:

 John 27 Lelaki

Dalam program di atas, kami mencetak nilai kunci namemenggunakan people(1)('name')dari kamus dalaman 1. Begitu juga, kami mencetak nilai agedan sexsatu persatu.

Tambahkan elemen ke Kamus Bersarang

Contoh 3: Bagaimana cara menukar atau menambahkan elemen dalam kamus bersarang?

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) people(3) = () people(3)('name') = 'Luna' people(3)('age') = '24' people(3)('sex') = 'Female' people(3)('married') = 'No' print(people(3))

Apabila kita menjalankan program di atas, ia akan menghasilkan:

 ('nama': 'Luna', 'usia': '24', 'seks': 'Perempuan', 'berkahwin': 'Tidak')

Dalam program di atas, kami membuat kamus kosong 3di dalam kamus orang.

Kemudian, kami menambah key:valuepasangan iaitu people(3)('Name') = 'Luna'di dalam kamus 3. Begitu juga, kami melakukan ini untuk kunci age, sexdan marriedsatu persatu. Apabila kami mencetak people(3), kami mendapat key:valuepasangan kamus 3.

Contoh 4: Tambahkan kamus lain ke kamus bersarang

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female', 'married': 'No')) people(4) = ('name': 'Peter', 'age': '29', 'sex': 'Male', 'married': 'Yes') print(people(4))

Apabila kita menjalankan program di atas, ia akan menghasilkan:

 ('nama': 'Peter', 'usia': '29', 'seks': 'Lelaki', 'berkahwin': 'Ya')

Dalam program di atas, kami menetapkan kamus literal untuk people(4). Secara harfiah mempunyai kunci name, agedan sexdengan nilai masing-masing. Kemudian kami mencetak people(4), untuk melihat bahawa kamus 4ditambahkan pada orang kamus bersarang.

Padamkan elemen dari Kamus Bersarang

Di Python, kami menggunakan pernyataan "del" untuk menghapus elemen dari kamus bersarang.

Contoh 5: Bagaimana cara menghapus elemen dari kamus bersarang?

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female', 'married': 'No'), 4: ('name': 'Peter', 'age': '29', 'sex': 'Male', 'married': 'Yes')) del people(3)('married') del people(4)('married') print(people(3)) print(people(4))

Apabila kita menjalankan program di atas, ia akan menghasilkan:

 ('name': 'Luna', 'age': '24', 'sex': 'Female') ('name': 'Peter', 'age': '29', 'sex': 'Lelaki')

Dalam program di atas, kami memadamkan key:valuepasangan marrieddari kamus dalaman 3dan 4. Kemudian, kami mencetak people(3)dan people(4)untuk mengesahkan perubahan.

Contoh 6: Bagaimana cara menghapus kamus dari kamus bersarang?

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female'), 4: ('name': 'Peter', 'age': '29', 'sex': 'Male')) del people(3), people(4) print(people)

Apabila kita menjalankan program di atas, ia akan menghasilkan:

 (1: ('nama': 'John', 'usia': '27', 'seks': 'Lelaki'), 2: ('nama': 'Marie', 'usia': '22', 'seks ':' Perempuan '))

Dalam program di atas, kami memadamkan kamus dalaman 3dan 4penggunaan deldari orang kamus bersarang. Kemudian, kami mencetak orang kamus bersarang untuk mengesahkan perubahan.

Pengulangan Melalui Kamus Bersarang

Dengan menggunakan gelung, kita dapat mengulangi setiap elemen dalam kamus bersarang.

Example 7: How to iterate through a Nested dictionary?

 people = (1: ('Name': 'John', 'Age': '27', 'Sex': 'Male'), 2: ('Name': 'Marie', 'Age': '22', 'Sex': 'Female')) for p_id, p_info in people.items(): print("Person ID:", p_id) for key in p_info: print(key + ':', p_info(key))

When we run above program, it will output:

 Person ID: 1 Name: John Age: 27 Sex: Male Person ID: 2 Name: Marie Age: 22 Sex: Female

In the above program, the first loop returns all the keys in the nested dictionary people. It consist of the IDs p_id of each person. We use these IDs to unpack the information p_info of each person.

The second loop goes through the information of each person. Then, it returns all of the keys name, age, sex of each person's dictionary.

Now, we print the key of the person’s information and the value for that key.

Key Points to Remember:

  1. Nested dictionary is an unordered collection of dictionary
  2. Slicing Nested Dictionary is not possible.
  3. We can shrink or grow nested dictionary as need.
  4. Like Dictionary, it also has key and value.
  5. Kamus diakses menggunakan kunci.

Artikel menarik...