From fb70ab05768fa4a54358dc1f304b68bc7aff6dae Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Sun, 8 Dec 2019 21:43:30 +0100 Subject: inversion json files --- inversion/params.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 inversion/params.py (limited to 'inversion/params.py') diff --git a/inversion/params.py b/inversion/params.py new file mode 100644 index 0000000..dd9a358 --- /dev/null +++ b/inversion/params.py @@ -0,0 +1,27 @@ +# ------------------------------------------------------------------------------ +# Util class for hyperparams. +# ------------------------------------------------------------------------------ + +import json + +class Params(): + """Class that loads hyperparameters from a json file.""" + + def __init__(self, json_path): + self.update(json_path) + + def save(self, json_path): + """Saves parameters to json file.""" + with open(json_path, 'w') as f: + json.dump(self.__dict__, f, indent=4) + + def update(self, json_path): + """Loads parameters from json file.""" + with open(json_path) as f: + params = json.load(f) + self.__dict__.update(params) + + @property + def dict(self): + """Gives dict-like access to Params instance.""" + return self.__dict__ -- cgit v1.2.3-70-g09d2