def func_yaml(data):
if isinstance(data, dict):
for key, value in data.items():
if"${"in str(value):
start = str(value).index("{") + 1
end = str(value).index("}")
func_name = str(value)[start:end]
data[key]= eval(func_name)return data
def func_yaml(data):
if isinstance(data, dict):
for key, value in data.items():
if"${"in str(value):
start = str(value).index("{")
end = str(value).index("}")
func_name = str(value)[start+1:end]if key =="name":
data[key]= str(value)[:start-1]+eval(func_name)
else:
data[key]= eval(func_name)return data
如果我们需要将姓名后的职位也加上,同时职位也不随机
YAML文件如下:
我们也需要在将固定部分拼接到方法返回值上,并且仅在name键值对上进行操作,代码如下
def func_yaml(data):
if isinstance(data, dict):
for key, value in data.items():
if"${"in str(value):
start = str(value).index("{")
end = str(value).index("}")
func_name = str(value)[start+1:end]if key =="name":
data[key]= str(value)[:start-1]+eval(func_name)+str(value)[end+1:]
else:
data[key]= eval(func_name)return data