Словари и Работа со словарями в Python

Работа с переменными
Работа со Словарями

Словари - Dictionary:

Существуют 4 типа создания словаря.

Вариант № 1:

d = {"key_1" : 1, "key_2" : "Test", "key_3": True}

print(d)		# Вывести весь словарь
print(d["key_2"])	# Вывести только значение ключа "key_2" в словаре

Вариант № 2:

d = dict(short="dict", longer="dictionary")
print(d)

Результат: {'short': 'dict', 'longer': 'dictionary'}


d['short'] = 234
print(d)

Результат: {'short': 234, 'longer': 'dictionary'}
d = dict([(23, 34), (56, 87)])
print(d)

Результат: {23: 34, 56: 87}

Вариант № 3:

d = dict.fromkeys (["a", "b"])
print(d)

Результат: {'a': None, 'b': None}


d = dict.fromkeys (["a", "b", "c"], 1)
print(d)

Результат: {'a': 1, 'b': 1, 'c': 1}

Вариант № 4:

d = {a : a ** 2 for a in range (10)}
print(d)

Результат: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

Пример работы со словарем:

person = {
          'name' : {
                    'last_name': 'Иванов',
                    'first_name': 'Иван',
                    'middle_name': 'Иванович'
                   },
          'address': [
                      'г. Андрюшки',
                      'ул. Васильковская д. 23б',
                      'кв.12'
                     ],
          'phone': {
                    'home_phone': '34-67-12',
                    'mobile_phone': '8-564-345-23-65',
                    'mobile_phone_2': 'Нет'
                   }
         }


print (person['name']['last_name'], person['name']['first_name'], person['name']['middle_name'])

Результат: Иванов Иван Иванович


print (person['phone']['mobile_phone'])

Результат: 8-564-345-23-65


print (person['address'][1])

Результат: ул. Васильковская д. 23б
print (person.keys())		# Показать все ключи соваря
				# Результат: dict_keys(['name', 'address', 'phone'])

print (person.values())		# Показать все значения соваря
				# Результат: dict_values([{'last_name': 'Иванов', 'first_name': 'Иван', 'middle_name': 'Иванович'}, ['г. Андрюшки', 'ул. Васильковская д. 23б', 'кв.12'], {'home_phone': '34-67-12', 'mobile_phone': '8-564-345-23-65', 'mobile_phone_2': 'Нет'}])

person.clear()			# Очистить весь словарь
print (person)			# Результат: {}