2011-10-18 10 views
0

でファイルに新しいレコードを追加/書き、今のところはこのように、このファイルを読んPythonの - 私は私のファイルのJSONの末尾に新しいレコードを追加したいJSON形式

{ 
    "1": 
     { 
      "coef":987, 
      "Term": 
       { 
       "x1":6,"x2":0,"x3":8 
       } 
      } 
    } 

イムが含まれています

try: 
     json_data=open ("/home/sage/content.txt") 
     data=json.load (json_data) 
    except IOError: 
    print "Can't open your file" 

ファイルの最後に新しいレコードを追加する方法。

答えて

2

データを読んだ後、あなたがファイルに追加することはできません、あなたは(あなたがしたい場合は、同じ名前を持つ)新しいファイルを作成する必要があります。

data['added_data'] = 'some data added' 
write_file = open("/home/sage/content.txt", "w") 
write_file.write(json.dumps(data)) 
+0

彼は 'json.load'ない' json.loads'を使用しているそう答える正しい+1 –

+0

は大丈夫あなたに感謝されます。)しかし、私は追加する必要はありません。 json_data = open( "/home/sage/content.txt") –

+0

私は訂正しました。 reposnse、感謝のコメントです。 – Ferran

2

あなたは、Python 2.5以降を使用している場合あなたはファイルを扱うwithステートメントを使用する必要があります。

import json 

with open('content.txt', 'r') as f: 
    data = json.load(f) 

data["2"] = { 
     "coef":987, 
     "Term": 
      { 
      "x1":6,"x2":0,"x3":8 
      } 
     } 

with open('content.txt', 'w') as f: 
    json.dump(data, f) 
関連する問題