---
title: Словари
seo:
  title: Словари — Data Analyst
  description: "Тема «Словари» для собеседования Data Analyst. Какая разница между словарями и JSON? Как отсортировать словарь по ключам, в алфавитном порядке?"
---

[Все темы Data Analyst](/data-analyst)

## <strong>Какая разница между словарями и</strong> <code>JSON</code><strong>?</strong> [#q-14bee738d69b8172b73edf25a367c373]

Основные различия между словарями в Python и <code>JSON</code> (JavaScript Object Notation)&#58;

{/* prettier-ignore */}
1. <strong>Синтаксис и представление</strong>&#58;

    - Словарь dict в Python хранит пары ключ-значение и сохраняет порядок вставки ключей. Ключи должны быть хешируемыми; равные ключи обозначают одну запись.

    - <strong>JSON</strong>&#58; это текстовый формат для представления структурированных данных, состоящий из пар ключ-значение, аналогично словарям в Python. Он используется для обмена данными между различными платформами и является более универсальным.

1. <strong>Использование</strong>&#58;

    - <strong>Словари в Python</strong>&#58; используются внутри программы для организации и обработки данных.

    - <strong>JSON</strong>&#58; часто используется для передачи данных между клиентом и сервером или для сохранения данных в файлы, когда требуется обмен информацией между различными языками программирования.

1. <strong>Поддержка типов данных</strong>&#58;

    - Словарь допускает значения любых типов, а ключи только хешируемых типов. Например, список может быть значением, но не ключом.

    - <strong>JSON</strong>&#58; поддерживает ограниченный набор базовых типов данных, таких как строки, числа, логические значения, массивы и объекты. Например, словари в Python могут содержать кортежи, а JSON — нет.

1. <strong>Дополнительные особенности JSON</strong>&#58;

    - <strong>JSON</strong>&#58; форматизирован для легкости восприятия человеком, что делает его удобным для чтения и написания.

:::note[Ссылки для изучения]

1. [Множества и словари в Python](https://education.yandex.ru/handbook/python/article/mnozhestva-slovari)
   :::

---

## <strong>Как отсортировать словарь по ключам, в алфавитном порядке?</strong> [#q-14bee738d69b81e49d4fc31fc94a54b5]

Для сортировки словаря по ключам в алфавитном порядке в Python можно использовать функцию <code>sorted&#40;&#41;</code> вместе с методом <code>&#46;items&#40;&#41;</code> словаря для получения списка кортежей (ключ, значение), отсортированных по ключам. Вот как это делается&#58;

```python
my_dict = {'c': 1, 'a': 2, 'b': 3}

sorted_dict = dict(sorted(my_dict.items()))

print(sorted_dict)  # Вывод: {'a': 2, 'b': 3, 'c': 1}
```

В этом примере <code>sorted&#40;my_dict&#46;items&#40;&#41;&#41;</code> возвращает отсортированный список кортежей <code>&#40;&#39;a&#39;&#44; 2&#41;</code>, <code>&#40;&#39;b&#39;&#44; 3&#41;</code>, <code>&#40;&#39;c&#39;&#44; 1&#41;</code>. Затем функция <code>dict&#40;&#41;</code> используется для преобразования отсортированного списка кортежей обратно в словарь.

:::note[Ссылки для изучения]

1. [Множества и словари в Python](https://education.yandex.ru/handbook/python/article/mnozhestva-slovari)
   :::
