簡體   English   中英

如何在Python的單個文件中讀寫多個相關的JSON結構?

[英]How to read and write multiple related JSON structures in a single file on Python?

我已經編寫了Python腳本來隨機創建一個包含學生和年級的JSON結構。 創建每個學生及其最終成績的腳本是:

import json
for i in range(1000):
    finalMedia = {"name":"name", "media":media}
    json.dump(finalMedia, open("xtext.txt",'w'))
    txt.write("\n")

結果是這樣的:

...
{"media": 7, "nome": "Bernardo"}
{"media": 7, "nome": "Isadora"}
{"media": 7, "nome": "Pedro"}
{"media": 9, "nome": "Agatha"}
...

關於閱讀,我編寫了另一個也使用JSON模塊的腳本:

import json
data = json.load(open("xtext.txt"))
print data

我期待整個文件的數據,但相反,出現以下錯誤: Extra data: line 2 column 1 - line 1001 column 1 (char 32 - 31997)

起初,我認為錯誤是斷線的結果。 我決定刪除txt.write(“ \\ n”),但是之后,我仍然遇到相同的錯誤。 然后,我嘗試將txt.write(“ \\ n”)更改為txt.write(“,”),但這也不起作用。 所以這個錯誤一定在我的閱讀上。 我與JSON模塊有關系嗎,或者確實是我編寫文件的方式嗎?

data = map(json.loads,open("xtext.txt"))

每行都是一個json結構...但是當一起作為一個單獨的文件時,這是無效的json

雖然實際上您應該只編寫一次json.dump

medias = [{"name":"name", "media":media} for name,media in all_media]
json.dump(medias,open("xtext.txt","wb")) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM