python-docx文件路径问题的解决方案
path="test.docx"以工程下venv文件夹为父目录
补充:Python读取指定目录下指定后缀文件并保存为docx
最近有个奇葩要求要项目中的N行代码申请专利啥的
然后作为程序员当然不能复制粘贴用代码解决。。
使用python-docx读写docx文件
环境使用python3.6.0
首先pip安装python-docx
pipinstallpython-docx
然后下面是脚本修改目录,这里默认取脚本运行目录下的src文件夹
取.cs后缀的所有文件读取并保存为docx
有一点需要注意,如果文件中有中文,请用vscode或者其他编辑器使用utf-8格式打开,看看有没有乱码其中每处理一个文件都会有print输出当看到只有---start没有end的时候就可以找到该文件查看是否有上面说的情况,修改后保存重新执行,一直到全部执行完毕,保存好docx文件
代码
#--coding:UTF-8--
#Createdbyluodyon2017/4/7.
importos
fromdocximportDocument
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
forroot,dirs,filesinos.walk(mypath):
forfilespathinfiles:
if(filespath.endswith('.cs')):
doc.add_heading(filespath,level=1)
codePage=''
print(filespath+'----start')
forlineinopen(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)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。