Python beágyazott szótár (példákkal)

Ebben a cikkben megismerheti a Python beágyazott szótárát. Pontosabban meg fogja tanulni a beágyazott szótár létrehozását, az elemek elérését, módosítását és így tovább a példák segítségével.

A Pythonban a szótár rendezetlen elemgyűjtemény. Például:

 szótár = ('kulcs': 'érték', 'kulcs_2': 'érték_2')

Itt a szótárnak van egy key:valuepárja göndör zárójelben ().

Ha többet szeretne megtudni a szótárról, keresse fel a Python szótárt.

Mi a beágyazott szótár a Pythonban?

A Pythonban a beágyazott szótár egy szótárban található szótár. Szótárak gyűjteménye egyetlen szótárban.

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

Itt a beágyazott_diktum beágyazott szótár a szótárral dictAés dictB. Két szótár, mindegyiknek saját kulcsa és értéke van.

Hozzon létre beágyazott szótárt

Létrehozzuk az emberek szótárát egy szótárban.

1. példa: Beágyazott szótár létrehozása

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

Amikor a program felett futunk, az a következőket adja ki:

 (1: ('név': 'John', 'kor': '27', 'nem': 'férfi'), 2: ('név': 'Marie', 'kor': '22', 'nem ": 'Nő'))

A fenti programban az emberek beágyazott szótárak. A belső szótár 1és 2az emberekhez van rendelve. Itt mind a szótárban van kulcs name, age, sexkülönböző értékekkel. Most kinyomtatjuk az emberek eredményét.

A beágyazott szótár hozzáférési elemei

A beágyazott szótár elemének eléréséhez indexelési ()szintaxist használunk a Pythonban.

2. példa: Az () szintaxissal érheti el az elemeket

 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'))

Amikor a program felett futunk, az a következőket adja ki:

 János 27 Férfi

A fenti program, kiírjuk a kulcs értékének namefelhasználásával azaz people(1)('name')belső szótárban 1. Hasonlóképpen, kiírja age, és sexegyesével.

Elem hozzáadása egy beágyazott szótárhoz

3. példa: Hogyan lehet elemeket megváltoztatni vagy hozzáadni egy beágyazott szótárhoz?

 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))

Amikor a program felett futunk, az a következőket adja ki:

 („név”: „Luna”, „életkor”: „24”, „nem”: „nő”, „házas”: „nem”)

A fenti programban létrehozunk egy üres szótárt 3a szótár emberein belül.

Ezután hozzáadjuk a szót, key:valueazaz people(3)('Name') = 'Luna'a szótár belsejében 3. Hasonlóképpen, ezt a kulcsért tesszük age, sexés marriedegyesével. Ha kiírjuk a people(3), megkapjuk key:valuepár szótárban 3.

4. példa: Adjon hozzá egy másik szótárt a beágyazott szótárhoz

 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))

Amikor a program felett futunk, az a következőket adja ki:

 („név”: „Péter”, „életkor”: „29”, „nem”: „Férfi”, „házas”: „Igen”)

A fenti programban szótár literált rendelünk hozzá people(4). A literálnak kulcsai vannak name, ageés sexa megfelelő értékekkel. Ezután kinyomtatjuk a people(4), hogy meggyőződjünk arról, hogy a szótár 4beágyazott szótárban van.

Elemek törlése a beágyazott szótárból

A Pythonban a „del“ utasítással töröljük az elemeket a beágyazott szótárból.

5. példa: Hogyan lehet elemeket törölni egy beágyazott szótárból?

 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))

Amikor a program felett futunk, az a következőket adja ki:

 („név”: „Luna”, „életkor”: „24”, „nem”: „nő”) („név”: „Péter”, „életkor”: „29”, „nem”: „férfi”)

A fenti programban töröljük a key:valuepárokat marrieda belső szótárból 3és 4. Ezután kinyomtatjuk a people(3)és people(4)a módosítások megerősítését.

6. példa: Hogyan lehet törölni a szótárt beágyazott szótárból?

 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)

Amikor a program felett futunk, az a következőket adja ki:

 (1: ('név': 'John', 'kor': '27', 'nem': 'férfi'), 2: ('név': 'Marie', 'kor': '22', 'nem ": 'Nő'))

A fenti program, töröljük mind a belső szótárban 3, és 4használja dela beágyazott szótárban emberek. Ezután kinyomtatjuk a beágyazott szótárakat a változtatások megerősítéséhez.

Iterálás egy beágyazott szótár segítségével

A for ciklusok segítségével iterálhatunk egy beágyazott szótár egyes elemein.

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. A szótárhoz a billentyűvel lehet hozzáférni.

érdekes cikkek...