Python3 中如何给 dict 添加 key-value 键值对?

1. 需求

在我的项目中,测试GET请求时,参数传递格式是这样的:params1:value1 + params2:value2 +params3:value3+ params4:value4 ,例如:https://dev.xxxxx.com/xxxx/mz_ysgzz_ygjbxx_sel?openid=xxxx&token=xxxx&sessionId=xxx&searchtext=xxx

图片.png

其中params1、params2、params3都是固定(即通用的,类似于联机参数)的,后面的params4、params5是根据接口内容的不同而变化的,有可能后面还有更多的查询参数,那么这个时候怎么处理呢?

2. 解决思路

①先将params1、params2、params3等固定的联机参数生成 为一个字典 dict A;
②再将不同的测试接口参数params4、params5等变化的查询参数写到对应的位置;


图片.png

③通过封装excel方法获取到这些数据,得到str类型的数据;


图片.png

图片.png

④ 通过json.loads方法将str类型的数据转换成字典 dict B ;
⑤ 合并两个字典成为 dict C,并返回合并后的值供其他接口调用

1
2
3
4
5
6
7
8
9
10
        params_common = {"openid":openid,"token":token,"sessionId":sessionId}

        #获取查询参数,并更新到 params_request 字段
        searchtext = self.data.get_params_searchtext(row)
        if searchtext:
            searchtext_dict = json.loads(searchtext)    #将获取到的str转换成 dict  
            params_request = dict(params_common,**searchtext_dict)  #将两个dict合并
            return params_request
        else:
            return params_common  #如果没有查询参数,就默认使用联机参数

3. 结果

图片.png

4. 参考博文

https://blog.csdn.net/feng98ren/article/details/80232907

图片.png