最近有個(gè)奇葩要求 要項(xiàng)目中的N行代碼 申請(qǐng)專利啥的
然后作為程序員當(dāng)然不能復(fù)制粘貼 用代碼解決。。
使用python-docx讀寫docx文件
環(huán)境使用python3.6.0
首先pip安裝python-docx
pip install python-docx
然后下面是腳本 修改目錄,這里默認(rèn)取腳本運(yùn)行目錄下的src文件夾
取.cs后綴的所有文件 讀取并保存為docx
有一點(diǎn)需要注意,如果文件中有中文,請(qǐng)用vscode或者其他編輯器使用utf-8格式打開(kāi),看看有沒(méi)有亂碼 其中每處理一個(gè)文件都會(huì)有print輸出 當(dāng)看到只有---start沒(méi)有end的時(shí)候就可以找到該文件查看是否有上面說(shuō)的情況,修改后保存重新執(zhí)行,一直到全部執(zhí)行完畢,保存好docx文件
代碼
# -- coding: UTF-8 --# Created by luody on 2017/4/7.import osfrom docx import DocumentsaveFile = os.getcwd() + "/code.docx"mypath = os.getcwd() + "/src"doc = Document()doc.add_heading("代碼文檔", 0)p = doc.add_paragraph('服務(wù)端代碼,使用語(yǔ)言')p.add_run('C#,SQL').bold = TruelineNum = 0for root, dirs, files in os.walk(mypath): for filespath in files: if (filespath.endswith('.cs')): doc.add_heading(filespath, level=1) codePage = '' print(filespath+' ---- start') for line in open(os.path.join(root, filespath), encoding="utf-8"): codePage += line lineNum += 1 print(filespath+' ---- end') doc.add_paragraph(codePage, style='IntenseQuote') doc.add_page_break()p = doc.add_paragraph(u'總行數(shù):')p.add_run(str(lineNum)).bold = Truedoc.save('code.docx')print(lineNum)以上所述是小編給大家介紹的Python讀取指定目錄下指定后綴文件并保存為docx,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林站長(zhǎng)站網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選