python 學習記錄六:根據清單及模板生成發不動產證用登記卡

原材料如下

python 學習記錄六:根據清單及模板生成發不動產證用登記卡

模板一

python 學習記錄六:根據清單及模板生成發不動產證用登記卡

臺賬一

python 學習記錄六:根據清單及模板生成發不動產證用登記卡

臺賬二

import docximport osimport openpyxlfrom docxtpl import DocxTemplatefrom docx import Documentfrom openpyxl import load_workbookwb = load_workbook(‘出登記卡臺賬。xlsx’)ws = wb[‘Sheet1’]contexts = []for row in range(2, ws。max_row + 1): zjbh= ws[“N” + str(row)]。value zdh = ws[“H” + str(row)]。value tfh = ws[“BB” + str(row)]。value zdmj = ws[“BL” + str(row)]。value tdzl= ws[“Q” + str(row)]。value txdz= ws[“O” + str(row)]。value sjyt = ws[“BI” + str(row)]。value tdqlr= ws[“I” + str(row)]。value tdqsxz = ws[“R” + str(row)]。value tdsyqlx= ws[“T” + str(row)]。value tdzh= ws[“CO” + str(row)]。value fzmj= ws[“BO” + str(row)]。value dymj= ws[“CR” + str(row)]。value qszm= ws[“BZ” + str(row)]。value djlx= ws[“D” + str(row)]。value context = {“zjbh”: zjbh,“zdh”: zdh, “tfh”: tfh,“zdmj”: zdmj,“tdzl”: tdzl,“txdz”: txdz,“sjyt”: sjyt,“tdqlr”:tdqlr,“tdqsxz”: tdqsxz,“tdsyqlx”: tdsyqlx,“tdzh”: tdzh,“fzmj”: fzmj,“dymj”: dymj,“qszm”: qszm,“djlx”: djlx} contexts。append(context) print(context[“zdh”])#os。mkdir(“。/所有合同”)for context in contexts: #print(context) wb = openpyxl。load_workbook(‘模板。xlsx’) wff = wb[‘土地登記卡’] #bg=context #print(bg) for i in context: wff[‘Q6’]=context[“zjbh”] wff[‘D3’]=context[“zdh”] wff[‘AA3’]=context[“zdh”] wff[‘Z6’]=context[“zdh”] wff[‘AA9’]=context[“zdh”] wff[‘Q3’]=context[“tfh”] wff[‘D4’]=context[“zdmj”] wff[‘H18’]=context[“zdmj”] wff[‘Q4’]=context[“tdzl”] wff[‘Q7’]=context[“txdz”] wff[‘D5’]=context[“sjyt”] wff[‘Q5’]=context[“tdqlr”] wff[‘S17’]=context[“tdqlr”] wff[‘D8’]=context[“tdqsxz”] wff[‘Q8’]=context[“tdsyqlx”] wff[‘AA8’]=context[“tdzh”] wff[‘Q10’]=context[“fzmj”] wff[‘AA10’]=context[“dymj”] wff[‘D14’]=context[“qszm”] wff[‘C17’]=context[“djlx”] wb。save(context[“zdh”]+‘登記卡。xlsx’)

python 學習記錄六:根據清單及模板生成發不動產證用登記卡

執行結果如圖

有類似的思路的可參考批次生成,能解決很大的問題