Как создать в Python многоуровневый список со словарями, вставлять переменные и преобразовать его в JSON для генерации?
Пример создания списка в формате JSON с вложенными словарями в Python:
```python
import json
data = {
"name": "John",
"age": 30,
"car": {
"model": "Honda",
"year": 2020
},
"pets": [
{"type": "dog", "name": "Buddy"},
{"type": "cat", "name": "Fluffy"}
]
}
json_data = json.dumps(data, indent=4)
print(json_data)
```
Этот код создаст следующий JSON:
```json
{
"name": "John",
"age": 30,
"car": {
"model": "Honda",
"year": 2020
},
"pets": [
{
"type": "dog",
"name": "Buddy"
},
{
"type": "cat",
"name": "Fluffy"
}
]
}
```
Чтобы создать многоуровневый список со словарями, можно использовать аналогичный подход, добавляя вложенные словари как элементы в список. После формирования списка его можно преобразовать в JSON с помощью `json.dumps()`.
Пример:
```python
import json
data = [
{
"name": "Alice",
"age": 25
},
{
"name": "Bob",
"age": 28,
"address": {
"city": "New York",
"street": "Broadway"
}
}
]
json_data = json.dumps(data, indent=4)
print(json_data)
```
Этот код создаст JSON, представляющий список с двумя элементами, один из которых содержит дополнительное вложенное словарь:
```json
[
{
"name": "Alice",
"age": 25
},
{
"name": "Bob",
"age": 28,
"address": {
"city": "New York",
"street": "Broadway"
}
}
]
```
Есть ли возможность в python прописать длинный многоуровневый список со словарями и вставлять туда переменные чтобы по итогу я мог сгенерировать из него JSON?
1. Вначале формируете словарь (или любые другие типы данных) со всеми необходимыми свойствами.
2. Преобразуете п1. в json методом json.dumps() .
import json krevetko = 'иа креветкО!' data = { "form_id": 1345, "fields": [ {"id": 1, "value": krevetko}, # <-- this is, krevetko variable {"id": 2, "value": 10306.25}, {"id": 3, "value": {"item_id": 845}}, { "id": 4, "value": [ { "row_id": 0, "cells": [ {"id": 6, "value": "2017-08-26"}, {"id": 9, "value": 10000} ] } ] } ] } print(json.dumps(data)) # {"form_id": 1345, "fields": [{"id": 1, "value": "\u0438\u0430 \u043a\u0440\u0435\u0432\u0435\u0442\u043a\u041e!"}, {"id": 2, "value": 10306.25}, {"id": 3, "value": {"item_id": 845}}, {"id": 4, "value": [{"row_id": 0, "cells": [{"id": 6, "value": "2017-08-26"}, {"id": 9, "value": 10000}]}]}]}
Больше примеров:
import json data_dict = {"name": "John", "age": 30} data_list = [1, 2, 3, 4] data_string = "Hello, world!" data_string_cyrillic = "иа креветкО!" data_number = 42 data_boolean = True data_none = None print(json.dumps(data_dict)) # {"name": "John", "age": 30} print(json.dumps(data_list)) # [1, 2, 3, 4] print(json.dumps(data_string)) # "Hello, world!" print(json.dumps(data_string_cyrillic)) # "\u0438\u0430 \u043a\u0440\u0435\u0432\u0435\u0442\u043a\u041e!" print(json.dumps(data_number)) # 42 print(json.dumps(data_boolean)) # true print(json.dumps(data_none)) # null