2016-03-24 3 views
0

Я борюсь со следующей проблемой типа python, которая выглядит так просто, но не очень. Я хочу создать корректный выход json из простого элемента и словаря с теми же ключами.Создание выходного сигнала json из одного элемента и второго словаря

Так желаемому результат должен выглядеть следующим образом:

[ 
    { 
        "id": "1", 
        "array": [ 
            { 
                "item": [ 
                    "one", 
                    "two", 
                    "three" 
                ] 
            } 
        ] 
    }, 
    { 
        "id": "2", 
        "array": [ 
            { 
                "item": [ 
                    "one", 
                    "two", 
                    "three" 
                ] 
            } 
        ] 
    } 
] 

Скажем, я сохранить «один», «два», «три» пунктов в списке, который я должен итерацию. Я предпочитаю, чтобы клавиши «item» были одинаковыми, но если один из вас может помочь мне с разными ключами (item_1, item_2, item_3), я могу принять его также.

спасибо, что заблаговременно!

ответ

1

Вы неясны о том, что вход выглядит, но я думаю, что следующее, что вы хотите:

import json 

# input data consists of records stored in lists. 
items = [ 
    ['one', 'two', 'three'], 
    ['four', 'five', 'six'] 
] 

# create a JSON string from records 
# if you want to write to file instead, see json.dump  
data = json.dumps(
    [{'id': k, 'array': [{'item': i}]} for k, i in enumerate(items, 1)], 
    indent=4 
) 
print(data) 

Это произведет:

[ 
    { 
     "array": [ 
      { 
       "item": [ 
        "one", 
        "two", 
        "three" 
       ] 
      } 
     ], 
     "id": 1 
    }, 
    { 
     "array": [ 
      { 
       "item": [ 
        "four", 
        "five", 
        "six" 
       ] 
      } 
     ], 
     "id": 2 
    } 
] 
+0

Спасибо сэр, вы сделали мой день ! –

Смежные вопросы