def get(self, key_path, default=None):
        try:
            value = self._data
            for k in key_path.split("."):
                value = value[k]
            return value
        except __HOLE__:
            if default is not None:
                return default
            else:
                raise ConfigKeyError(key_path)
dataset/ETHPy150Open smartanthill/smartanthill1_0/smartanthill/configprocessor.py/ConfigProcessor.get