python,批量生成指定格式的审核数据(传输参数格式为数组时)

#思路
#获取list长度(例如列表有20条数据,则生成20条数据),生成数组长度为list元素的数据,完成对列表20条数据的批量审核
def
createBatchData(self,str_in,list_in): list2=[]#用于存放替换后的数据 batchAudit=str_in.find(' ') for a in list_in: str_Batch=str_in[:batchAudit]#匹配出第一行数据 find_str=str_Batch.rfind(' ')#匹配出结果空格所处下标 Batch_value_source=str_Batch[find_str:] #取出value值 Batch_value_now=Batch_value_source.replace(str(Batch_value_source),str(a)) #替换value值为list里面的数据 str_pinjie_first=str_Batch[:find_str+1]+Batch_value_now #字符拼接 find_str2=str_pinjie_first.find(':') #匹配出结果冒号所处下标 Batch_key=str_pinjie_first[:find_str2] #取出冒号左边的值 Batch_key_brackets_source=re.search('(Wd+W)',Batch_key).group() #匹配出[0] Batch_key_brackets_now=re.sub(Batch_key_brackets_source,str(list_in.index(a)),Batch_key)#替换[0]为list对应的下标 str_pinjie_second=Batch_key_brackets_now+str_pinjie_first[find_str2:] #字符拼接 list2.append(str_pinjie_second) #将替换好的数据添加至list2 list_to_str=' '.join(list2) #将list2转换为字符串,并以换行符间隔 # print(list_to_str) last_replace=str_in.replace(str_Batch,list_to_str) #最后完成替换 # print(last_replace) str_give=self.requestDataToStr_firefoxAndChrome(last_replace) #调用字符转换方法进行请求数据处理 return str_give

if __name__=="__main__":
list1=[28081, 28080, 28079, 28078, 28077, 28076, 28075, 28074, 28073, 28072, 28071, 28070, 28069 ]
createBatchData('''member_finance_id[0]: 28082
total_price: 9800
state: 1
finan_rmk: 432
pay_fees_ascribed: 1''',list1)

输入:

member_finance_id[0]: 28082
total_price: 9800
state: 1
finan_rmk: 432
pay_fees_ascribed: 1

输出:

member_finance_id[0]: 28081
member_finance_id[1]: 28080
member_finance_id[2]: 28079
member_finance_id[3]: 28078
member_finance_id[4]: 28077
member_finance_id[5]: 28076
member_finance_id[6]: 28075
member_finance_id[7]: 28074
member_finance_id[8]: 28073
member_finance_id[9]: 28072
member_finance_id[10]: 28071
member_finance_id[11]: 28070
member_finance_id[12]: 28069
total_price: 9800
state: 1
finan_rmk: 432
pay_fees_ascribed: 1

最终调用请求数据转换方法完成对数据的进一步处理

最终输出:

member_finance_id[0]=28081&member_finance_id[1]=28080&member_finance_id[2]=28079&member_finance_id[3]=28078&member_finance_id[4]=28077&member_finance_id[5]=28076&member_finance_id[6]=28075&member_finance_id[7]=28074&member_finance_id[8]=28073&member_finance_id[9]=28072&member_finance_id[10]=28071&member_finance_id[11]=28070&member_finance_id[12]=28069&total_price=9800&state=1&finan_rmk=432&pay_fees_ascribed=1

原文地址:https://www.cnblogs.com/qtclm/p/10746988.html