在Python中,json.load()和json.loads()有什麼區別?Python中的json.load()和json.loads()函數有什麼區別?
我想的是,負載()函數必須以文件對象(我需要這樣使用上下文管理器),而載荷()函數取文件路徑作爲一個字符串被使用。這有點令人困惑。
這封信 「小號」 在json.loads()代表串?
非常感謝您的回答!
在Python中,json.load()和json.loads()有什麼區別?Python中的json.load()和json.loads()函數有什麼區別?
我想的是,負載()函數必須以文件對象(我需要這樣使用上下文管理器),而載荷()函數取文件路徑作爲一個字符串被使用。這有點令人困惑。
這封信 「小號」 在json.loads()代表串?
非常感謝您的回答!
是的,它代表字符串。 json.loads
函數不採用文件路徑,而是將文件內容視爲字符串。看看https://docs.python.org/2/library/json.html的文檔!
文檔是很清楚的:https://docs.python.org/2/library/json.html
json.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
反序列化FP(一個.read() - 支撐包含 JSON文檔類文件對象)使用該轉換表Python對象。
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
反序列化S(一個STR或含有JSON文檔的unicode實例) 使用該轉換表Python對象。
所以load
是一個文件,loads
爲string
您已經閱讀了這些方法的文檔? – JJJ
*'json.loads(s,*)' - 反序列化'''包含JSON文檔的'str','bytes'或'bytearray'實例* - https://docs.python.org/3.6/ library/json.html – deceze