我有一个包含以下代码的 Python 文件 main.py
,但它给了我错误消息:
day_of_event = '1990-12-25'
shopping_list = ['bread', 'cereal', 'water', 'soda', 'bananas']
with open(store_items.json) as file:
json_file = json.loads(file)
report = json_file["report"]
report = json.dumps(report)
以下是 JSON 文件 store_items.json
:
{
"report" : "{'title' : 'grocery_report', 'date' : day_of_event, 'grocery_items' : shopping_list}"
}
如何读取 JSON 文件 store_items.json
并将 JSON 变量“report”导入到 Python 文件中,以便与 Python 脚本中的变量 report
等效到以下?
report = {'title' : 'grocery_report', 'date' : '1990-12-25', 'grocery_items' : ['bread', 'cereal', 'water', 'soda', 'bananas']}
最佳答案
要直接从文件中读取,需要json.load
而不是json.loads
; s
代表“字符串”,您正在从文件而不是字符串中读取。 (我同意这些名称可以而且应该更好。)此外,您的文件名需要加引号。完成此操作后,report = json_file["report"]
已经为您提供了您想要的结果。 (.dumps
调用转换回字符串 - 再次,s
表示字符串,而不是写入打开的文件对象 - 因此这不是您想要的。)
关于python - 导入 JSON 时使用 Python 脚本中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58124975/