Spaces:
Sleeping
Sleeping
from yacs.config import CfgNode | |
_VALID_TYPES = {tuple, list, str, int, float, bool} | |
def convert_to_dict(cfg_node, key_list=[]): | |
""" Convert a config node to dictionary """ | |
if not isinstance(cfg_node, CfgNode): | |
if type(cfg_node) not in _VALID_TYPES: | |
print("Key {} with value {} is not a valid type; valid types: {}".format( | |
".".join(key_list), type(cfg_node), _VALID_TYPES), ) | |
return cfg_node | |
else: | |
cfg_dict = dict(cfg_node) | |
for k, v in cfg_dict.items(): | |
cfg_dict[k] = convert_to_dict(v, key_list + [k]) | |
return cfg_dict |