我的代碼:
with open('music_queue.json', 'r') as f:
data = f.read()
list_str = data.split('\n')
print(list_str)
db = []
for d in list_str:
db.append(json.loads(d))
我的原始 JSON:
{"guild_id" : 00000, "song_list" : []}
我試過做:
data = data.replace('\"', '\\\"')
只有我有這個錯誤:
Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
我已經在這幾個小時了。這是怎么回事?
另外,如果這已經得到回答,我們深表歉意。我真的在這里找不到任何我還沒有嘗試過的東西。
uj5u.com熱心網友回復:
json檔案中的文本必須遵循 JSON 標準,并且 00000(不帶引號標記為字串)不是有效值 - 將其替換為0or "00000"。
當您打開一個有效的json檔案時,您可以將內容直接加載到字典中,如下所示:
with open('music_queue.json', 'r') as f:
data = json.load(f)
有效 json 檔案示例:
{"guild_id" : 10000, "song_list" : []}
PS你必須""在json檔案中使用雙引號而不是單引號''
uj5u.com熱心網友回復:
Expecting property name enclosed in double quotes
讓我們理解這個錯誤,它只是說屬性名稱必須用雙引號引起來。現在這指的是您的 JSON 檔案,因為 00000 無效。如果它是一個數字 0 就足夠了。但是有 4 個零使它讀作字串
json中的字串需要用雙引號括起來
將json更改為:
{"guild_id" : "00000", "song_list" : []}
希望能幫助到你!
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/512453.html
標籤:Pythonjson
