2016-11-02 4 views
0

は、私は以下のように見えるの辞書を持っている(。なしの試験例)などのJSON見えること以下のように修正JSONファイルに新しいJSON辞書オブジェクトの挿入

{ 

"permutations": [ 
{ 
    "testname": "test1", 
    "file_type": "text", 
    "app_parent_folder": "folder", 
    "expected_result": "block", 
    "rule_id": "1" 
}, 
{ 
    "testname": "test2", 
    "file_type": "text", 
    "app_parent_folder": "folder", 
    "expected_result": "block", 
    "rule_id": "2" 
} 
    ] 
} 

た後、私は以下のコードを使用してみましたが、所望の結果に

import json 
from pprint import pprint 

with open('example.json') as data_file: 
    data = json.load(data_file) 

for rule_id_num in range(1,2): 
    data["permutations"].append('rule_id':rule_id_num) 
pprint(data) 

嘆願を得ていませんどのように上記のjsonファイルに辞書を追加することができますか?前もって感謝します!!

+0

希望の結果が得られていません_良い質問は何が起こったかを示しています。私はあなたが文法エラーを持っていると仮定しますが、推測させません! – tdelaney

答えて

3

rule_idを追加するコンテナはディクショナリであるため、追加することはできません。値をキーで追加する必要があります。

これを試してみてください:私が聞いている

import json 
from pprint import pprint 

with open('example.json') as data_file: 
    data = json.load(data_file) 

for index, d in enumerate(data['permutations'], 1): 
    d['rule_id'] = str(index) 

pprint(data) 

一つ、テスト名とRULE_IDの間に何らかの関係があるのでしょうか?

+2

注:列挙する開始番号を与えることができます: 'enumerate(data ['permutations']、1)'。 'index + 1'を保存します。 – idjaw

+1

素晴らしい、歓声:) –

関連する問題