1
0
mirror of https://github.com/microsoft/qlib.git synced 2026-07-14 08:16:54 +08:00

fill placehorder dict and list

This commit is contained in:
wangwenxi.handsome
2021-06-24 20:46:20 +08:00
committed by you-n-g
parent 4488c3b625
commit 8b28575dad

View File

@@ -13,6 +13,7 @@ In ``DelayTrainer``, the first step is only to save some necessary info to model
import socket import socket
import time import time
import re
from typing import Callable, List from typing import Callable, List
from qlib.data.dataset import Dataset from qlib.data.dataset import Dataset
@@ -62,24 +63,26 @@ def fill_placeholder(config: dict, config_extend: dict):
the parameter dict the parameter dict
""" """
# check the format of config_extend # check the format of config_extend
import re
for placeholder in config_extend.keys(): for placeholder in config_extend.keys():
assert re.match(r"<[^<>]+>", placeholder) assert re.match(r"<[^<>]+>", placeholder)
re.match()
# bfs # bfs
top = 0 top = 0
tail = 1 tail = 1
dict_quene = [config] item_quene = [config]
while(top < tail): while(top < tail):
now_dict = dict_quene[top] now_item = item_quene[top]
top += 1 top += 1
for key in now_dict.keys(): if(isinstance(now_item, list)):
if(isinstance(now_dict[key], dict)): item_keys = range(len(now_item))
dict_quene.append(now_dict[key]) elif(isinstance(now_item, dict)):
item_keys = now_item.keys()
for key in item_keys:
if(isinstance(now_item[key], list) or isinstance(now_item[key], dict)):
item_quene.append(now_item[key])
tail += 1 tail += 1
elif(now_dict[key] in config_extend.keys()): elif(now_item[key] in config_extend.keys()):
now_dict[key] = config_extend[now_dict[key]] now_item[key] = config_extend[now_item[key]]
return config return config