函数间传参实例(前一个函数产生的数据传到给后一个函数应用)

场景描述:A函数通过一系列的请求与执行,创建并产生订单

     B函数获取该订单,然后查询该订单,获取订单信息

本次实例的关键就是,A产生的订单号,传给B,实现函数间传参

代码如下:

import requests  # 先导入包,这是必须的
import json

ordid="190416111501017074"          #A函数产生的订单号,具体过程不在此书写
#ordid为定义的变量,需要写到下面函数的括号中,可理解为把变量ordid传到函数search中
def search(ordid):   
    payload = {'PageIndex': '1',
               'PageSize':'10',
               #'MinDate':,
               #'MaxDate':,
               'PaymentChannel':'0',
               #'MemberName':,
               'OrderNo':ordid,       #应用变量
               'RightsStatus':'0',
               #'Receiver':,
               #'GoodsKeyWord':,
               'OrderStatus':'2',
               'PrintStatus':'0',
               'Sort':'1',
               'rend':'0.19890558690118176'}
    url = 'https://xxx.bbb.com/100000000032/OrderDeliver/GetOrderList?'  # url:接口地址
    header = {
        'authorization': 'Bearer.eyJtaWQiOjE1Nzk5LCJ1bm_ZmrAo4OaEa8upMQ-eRy9Lsk',
        'req-host': 'shop.xxx.com',
        'content-type': 'application/json',
        'content-length': '0',
        'host': 'xxxx.xxx.com'}  # header:传递header信息
    data = None
    r = requests.get(url, data=data, headers=header, params=payload)  # 请求url,获得返回的数据信息
    text = r.text
    #print(text)  # 获得的返回数据使用text方法进行获取
    jsonobj = json.loads(text)  # 将响应内容转换为Json对象
    orderId = jsonobj['Data']['DataList'][0]['Id']# 从Json对象获取想要的内容
    listItemId = jsonobj['Data']['DataList'][0]['OrderItem'][0]['Id']# 从Json对象获取想要的内容
    print(text)
    return(orderId,listItemId)

a = search(ordid)  #执行定义好的请求函数
b=a[0]
c=a[1]

如此即实现了id变量化,从前一脚本获取,传给后面的脚本使用

参考地址:http://docs.python-requests.org/zh_CN/latest/user/quickstart.html

猜你喜欢

转载自www.cnblogs.com/becks/p/11357107.html