python yaml文件存储变量
程序员文章站
2024-02-07 12:37:04
最近,在写接口自动化测试框架时,遇到了一个问题,经过base64编码的图片长度很大,如果直接放在Ymal文件中肯定不太合适,于是,就想能不能在yaml中存入一个变量? 结果可行。思路就是:在yaml中存储一个含有特殊字符的字符串读取yaml数据,进行序列化设一个空字典,将字典的key设为与特殊字符串中的变量名一致取字典完成替换#yaml文件写法- {'status':1,'msg':'ok','type':'${type}'}import jsonimport yaml....
- 最近,在写接口自动化测试框架时,遇到了一个问题,经过base64编码的图片长度很大,如果直接放在Ymal文件中肯定不太合适,于是,就想能不能在yaml中存入一个变量? 结果可行。
- 思路就是:
- 在yaml中存储一个含有特殊字符的字符串
- 读取yaml数据,进行序列化
- 设一个空字典,将字典的key设为与特殊字符串中的变量名一致
- 取字典完成替换
#yaml文件写法
-
{'status':1,'msg':'ok','type':'${type}'}
import json
import yaml
def replace_method(**kwargs):
with open('./testdata/verb.yaml','r') as f:
data = yaml.safe_load(f)
#序列化
data1 = json.dumps(data)
for key,value in kwargs.items():
data1 = data1.replace(f'${{{key}}}',value)
#反序列化
data2 = json.loads(data1)
return data2
print(replace_method(type='ok'))
本文地址:https://blog.csdn.net/Unstoppable365/article/details/107330636