Словарь

13 декабря 2019



Словарь (dict) - неупорядоченная структура данных, в которой элементы хранятся в виде ключ: значение. Объявляются словарь в фигурных скобках { }, и доступ к данным осуществляется по ключу.

mydic = {1: "Первый", 2: "Второй", "name": "user"}
print(mydic[1]) # Первый
print(mydic["name"]) # user

Вложенные словари

Как списки или кортежи словарь может быть вложен в словарь:

sumdic = {
    'name': {
        'first': 'Иван',
        'second': 'Иванов'
    },
    'job': ['Админ', 'Программер']
}
print("Person: ",sumdic['name']['second'], "\nДолжность", sumdic['job'][0])

Данная конструкция подходит для хранения данных и обращения к ним.

Замена по словарю

Вариант 1 с перезаписью

dic = {'a': 1, 'b': 2, 'c': 3}
text = 'abccba'
for i in dic.keys():
    text = text.replace(i, str(dic[i]))
print(text)

Здесь мы объявляем словарь dic и строку text, в которой будем делать замену.
Далее в цикле for проходим по словарю и заменяем буквы на цифры.

Вариант 2 создавая новую строку

dic = {'a': 1, 'b': 2, 'c': 3}
text = 'abccba'
ret_txt = ""

for i in text:
    if i in dic.keys():
        i = dic[i]
        ret_txt += str(i)
    else:
        pass
print(ret_txt)

В этом примере, мы также создаем словарь и строку для замены dic и text соответственно. Создадим еще одну строку ret_txt, в которую запишем итоговые данные.
Для этого в цикле for, который теперь проходит по строке text, добавим вложенное условие if.
В if мы проверяем соответствует ли буква ключу словаря dic, и если да, то добавляем значение в строку ret_txt. На выходе мы должны получить такаю же строку, как и в 1 примере.