Files
pipeline/pp_params.py
T

37 lines
819 B
Python

# coding: utf-8
import numpy as np
import re
import bunch
import yaml
import os
_dir_path = os.path.dirname(os.path.realpath(__file__))
# Add support for '1e3' kind of float
_loader = yaml.SafeLoader
_loader.add_implicit_resolver(
u"tag:yaml.org,2002:float",
re.compile(
u"""^(?:
[-+]?(?:[0-9][0-9_]*)\\.[0-9_]*(?:[eE][-+]?[0-9]+)?
|[-+]?(?:[0-9][0-9_]*)(?:[eE][-+]?[0-9]+)
|\\.[0-9_]+(?:[eE][-+][0-9]+)?
|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*
|[-+]?\\.(?:inf|Inf|INF)
|\\.(?:nan|NaN|NAN))$""",
re.X,
),
list(u"-+0123456789."),
)
def load_params(filename):
with open(filename) as f:
para_disk = yaml.load(f, Loader=_loader)
return bunch.bunchify(para_disk)
def default_params():
return load_params(_dir_path + "/pp_params.yml")