Подібно до List Comprehension, Python дозволяє тлумачення словників. Ми можемо створювати словники за допомогою простих виразів. Словникове розуміння приймає форму {ключ: значення для (ключ, значення) в ітерації}
Приклад розуміння словника Python
Ось у нас два списки іменовані ключі та значення, і ми повторюємо їх за допомогою zip() функція.
Python
# Python code to demonstrate dictionary> # comprehension> # Lists to represent keys and values> keys> => [> 'a'> ,> 'b'> ,> 'c'> ,> 'd'> ,> 'e'> ]> values> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ]> # but this line shows dict comprehension here> myDict> => { k:v> for> (k,v)> in> zip> (keys, values)}> # We can use below too> # myDict = dict(zip(keys, values))> print> (myDict)> |
>
проста програма на пітоні
>
Вихід:
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}>
Використання методу fromkeys().
Тут ми використовуємо метод fromkeys(), який повертає словник із певними ключами та значеннями.
Python3
dic> => dict> .fromkeys(> range> (> 5> ),> True> )> print> (dic)> |
>
>
Вихід:
{0: True, 1: True, 2: True, 3: True, 4: True}>
Використовуючи розуміння словника, створіть словник
приклад 1:
Python
# Python code to demonstrate dictionary> # creation using list comprehension> myDict> => {x: x> *> *> 2> for> x> in> [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ]}> print> (myDict)> |
>
>
Вихід:
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}>
приклад 2:
Python
sDict> => {x.upper(): x> *> 3> for> x> in> 'coding '> }> print> (sDict)> |
>
>
Вихід:
{'O': 'ooo', 'N': 'nnn', 'I': 'iii', 'C': 'ccc', 'D': 'ddd', 'G': 'ggg'}>
Використання умовних висловлювань у розумінні словника
приклад 1:
Ми можемо використовувати розуміння словника з операторами if і else, а також з іншими виразами. У наведеному нижче прикладі числа зіставляються з кубиками, які не діляться на 4.
Python
# Python code to demonstrate dictionary> # comprehension using if.> newdict> => {x: x> *> *> 3> for> x> in> range> (> 10> )> if> x> *> *> 3> %> 4> => => 0> }> print> (newdict)> |
>
>
Вихід:
{0: 0, 8: 512, 2: 8, 4: 64, 6: 216}>
Використання вкладеного розуміння словника
Тут ми намагаємося створити вкладений словник за допомогою словникового розуміння.
Python3
# given string> l> => 'GFG'> # using dictionary comprehension> dic> => {> > x: {y: x> +> y> for> y> in> l}> for> x> in> l> }> print> (dic)> |
>
>
Вихід:
{'G': {'G': 'GG', 'F': 'GF'}, 'F': {'G': 'FG', 'F': 'FF'}}>