【发布时间】:2018-05-17 15:16:14
【问题描述】:
问题,我有一个访问 json 文件中数据的应用程序。现在,每次应用程序需要数据时,我都会像这样打开和关闭文件。
def access_file():
try:
with open(my_file, 'r') as json_data:
json_data = json.load(json_data)
return json_data
except FileNotFoundError:
logging.error("my_file not found.")
我认为连续多次打开和关闭此文件并不明智。如何只打开一次,如果它没有打开并保持打开,然后我可以在需要时访问它。
【问题讨论】:
-
如果文件不是很大,您可以简单地将其保存在所需命名空间中可访问的对象中。并且有很多方法可以做这样的事情,这与你的代码的其余部分以及你如何在代码中使用这个函数密切相关。
-
假设文件很大,而且会变得更大。有办法吗?
-
假设您的 json 文件确实变得太大而无法将其保存在内存中,那么问题将首先出现在 json 模块内部尝试解析它,而不是您的代码试图将结果保存在变量中。所以只要
json_data可以返回,一切都好。 -
在这种情况下,您应该使用数据库。
标签: json python-3.x