批量写入
进一阶示例
- 当前是追加模式,运行一次会不停地往文件中追加,重写可删除文件
def genaratedbadd(filename,strdemo='stringin',ptpstr='PtpInstancePeerMac_1_1',inpstr='INP',wrsstr='wrsPtpInstancePee rMac.1.1',numstr='40'):
filetxt = 'record (' + strdemo + ', "$(DEV)' + ptpstr + '")' + '\n'
filetxt += '{' + '\n'
filetxt += 'field (DESC, "SNMP channel")' + '\n'
filetxt += 'field(DTYP, "Snmp" )' + '\n'
filetxt += 'field(SCAN, ".5 second" )' + '\n'
filetxt += 'field(' + inpstr + ', "@$(HOST) private $(MIB)::'+ wrsstr + ' STRING: ' + numstr + '" )' + '\n'
filetxt += '}' + '\n' + '\n'
with open(filename,mode='a') as f:
f.write(filetxt)
filename = 'E:/BaiduSyncdisk/SXFEL/study/softcenter-redmibook14/study/test_write/xiaotest.db'
wrsstrs = ['wrsPtpInstancePee rMac.1.%i' %i for i in range(1,4)]
[genaratedbadd(filename,wrsstr=wrsstr) for wrsstr in wrsstrs]
filename = 'E:/BaiduSyncdisk/SXFEL/study/softcenter-redmibook14/study/test_write/xiaotest.db'
strdemos = ['longin', 'longout', 'stringin']
[genaratedbadd(filename,strdemo=strdemo) for strdemo in strdemos]
[genaratedbadd(filename,strdemo=strdemo,wrsstr=wrsstr) for strdemo in strdemos for wrsstr in wrsstrs]
wrsstrs = ['wrsPtpInstancePee rMac.%i.%i' %(i,j) for i in range(2,7) for j in range(1,11)]
ptpstrs = ['PtpInstancePeerMac_%i_%i' %(i,j) for i in range(2,7) for j in range(1,11)]
[genaratedbadd(filename,ptpstr=ptpstrs[i],wrsstr=wrsstrs[i]) for i in range(len(wrsstrs))]
基础示例
for i in range(7):
filename = 'E:/BaiduSyncdisk/SXFEL/study/softcenter-redmibook14/study/test_write/xiao' + str(i) + '.db'
for strdemo in ['longin', 'longout', 'stringin']:
filetxt = 'record (' + strdemo + ', "$ (DEV) PtpInstancePeerMac_1_1")' + '\n'
filetxt += '{' + '\n'
filetxt += 'field (DESC,"SNMP channel")' + '\n'
filetxt += 'field(DTYP,"Snmp" )' + '\n'
filetxt += 'field(SCAN,".5 second" )' + '\n'
filetxt += 'field(INP , "@$ (HOST) private $(MIB) : :wrsPtpInstancePee rMac.1.1' + '\n'
filetxt += 'STRING: 40" )' + '\n'
filetxt += '}' + '\n'
with open(filename,mode='a') as f:
f.write(filetxt)