这篇文章主要介绍了python读取指定目录下指定后缀文件并保存为docx,需要的朋友可以参考下
最近有个奇葩要求 要项目中的n行代码 申请专利啥的
然后作为程序员当然不能复制粘贴 用代码解决。。
使用python-docx读写docx文件
环境使用python3.6.0
首先pip安装python-docx
pip install python-docx
然后下面是脚本 修改目录,这里默认取脚本运行目录下的src文件夹
取.cs后缀的所有文件 读取并保存为docx
有一点需要注意,如果文件中有中文,请用vscode或者其他编辑器使用utf-8格式打开,看看有没有乱码 其中每处理一个文件都会有print输出 当看到只有---start没有end的时候就可以找到该文件查看是否有上面说的情况,修改后保存重新执行,一直到全部执行完毕,保存好docx文件
代码
# -- coding: utf-8 --
# created by luody on 2017/4/7.
import os
from docx import document
savefile = os.getcwd() + "/code.docx"
mypath = os.getcwd() + "/src"
doc = document()
doc.add_heading("代码文档", 0)
p = doc.add_paragraph('服务端代码,使用语言')
p.add_run('c#,sql').bold = true
linenum = 0
for 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'总行数:')
p.add_run(str(linenum)).bold = true
doc.save('code.docx')
print(linenum)
以上就是介绍python读取指定目录下指定后缀文件并保存为docx的方法的详细内容。