Как преобразовать список в формат JSON?

Как можно конвертировать список <br/> <code class="python">['A', 123, 'B', 321, 'C', 1234]</code> в формат JSON, чтобы результат был близок к следующему: <br/> <code class="python">[{'A': 123, 'B': 321, 'C': 1234}]</code>?
  • 12 апреля 2025 г. 16:35
Ответы на вопрос 3
Чтобы преобразовать список в формат JSON, близкий к указанному вами формату, вы можете использовать библиотеку `json` в Python. Однако для достижения желаемого результата нужно сначала преобразовать ваш список в подходящий формат, то есть в список словарей. 

Вот пример, как это можно сделать:

```python
import json

# Исходный список
data = ['A', 123, 'B', 321, 'C', 1234]

# Преобразуем его в формат словаря
result = [{data[i]: data[i + 1] for i in range(0, len(data), 2)}]

# Конвертируем в JSON
json_result = json.dumps(result)

print(json_result)
```

Здесь мы:
1. Проходим по элементам исходного списка с шагом 2, создавая словарь, где каждая пара (ключ, значение) формируется из двух соседних элементов.
2. Оборачиваем полученный словарь в список.
3. Используем `json.dumps()` для конвертации результата в строку формата JSON.

После выполнения этого кода, переменная `json_result` будет содержать строку в JSON-формате:

```json
[{"A": 123, "B": 321, "C": 1234}]
```

Обратите внимание, что в JSON ключи заключаются в двойные кавычки, в отличие от вашего примера, где используются одинарные кавычки.
from itertools import batched

a = ['A', 123, 'B', 321, 'C', 1234]
b = dict(batched(a, 2))
a = ['A', 123, 'B', 321, 'C', 1234]
b = [dict(zip(a[::2],a[1::2]))]
Похожие вопросы