2015-02-12 77 views
-1

當我直接指定參數值時,此代碼寫入json文件測試。寫入JSON文件

import json 

def write_to_json(list, filename): 
    f = open(filename, "w") 
    json.dump(list, f) 
    f.close() 
    return 
write_to_json(["a", "b"], "test.json") 

但是,當列表來自前一個函數的返回語句時,它不會寫入。

def write_to_json(list, filename): 
    f = open(filename,"w") 
    json.dump(list, f) 
    f.close() 
    return 

write_to_json(list,"test.json") 

Error: Unresolved reference "list" 
+1

我沒有在任何地方看到'list = whatever'(*糟糕的*名稱用於變量BTW!) - 向我們展示您的**整個**代碼,如果您想幫助查找錯誤! – 2015-02-12 06:13:48

+1

列表是一個內置變量不使用的。 – 2015-02-12 06:13:59

+0

@ Alex,列表來自前一個函數的返回語句。 – Alph 2015-02-12 06:26:21

回答

0
import json 

def foo(bar): 
    return [bar] 

def write_to_json(list, filename): 
    f=open(filename,"w") 
    json.dump(list, f) 
    f.close() 
    return 

mylst = foo('bar') 
write_to_json(mylst,'t.txt') 

是絕對沒有錯,上面的代碼。
這很可能是您沒有指定list是什麼。

+0

這解決了這個問題。我假設列表中有值。 – Alph 2015-02-12 06:27:44