Context managerΒΆ
JSONFile implements __enter__/__exit__. By default it saves
automatically on a clean exit (no exception). You can disable this by
passing auto_save=False.
from singlejson import JSONFile
# Auto-save on clean exit
with JSONFile("data.json", default_data={}) as jf:
jf.json["counter"] = 1
# No auto-save
with JSONFile("scratch.json", default_data={}, auto_save=False) as jf:
jf.json["tmp"] = True