python-docx文件路径问题的解决方案

path = "test.docx"以工程下venv文件夹为父目录

补充: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)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • 使用Python docx修改word关键词颜色的操作

    需求: 在刷word题库的时候,答案就在题目下方,干扰复习效果,将答案字体变成白色,查看答案的时候只需要将答案背景刷黑 转换需求: 在word中找到关键字"答案"将其后面的信息改变颜色为白色 由于第一次使用 import docx,最初想按照如上思想实现比较麻烦,后整理思路,将题库保存为txt,逐条读取转存入word,利用分割函数对关键字进行分割,关键字后面的信息即为答案改变颜色,效果和需求一致,只是新建了文件 实现代码: import os import re import docx

  • python 实现docx与doc文件的互相转换

    因文件格式要求,需要将docx 与doc文件相互转换,特寻找python代码,与大家共分享 from win32com import client #转换doc为docx def doc2docx(fn): word = client.Dispatch("Word.Application") # 打开word应用程序 #for file in files: doc = word.Documents.Open(fn) #打开word文件 doc.SaveAs("{}x"

  • 安装python-docx后,无法在pycharm中导入的解决方案

    又遇到了一个坑.. 类似于安装py2neo时遇到的问题差不多... 今天准备试一下docx,按照网上的步骤直接在命令行中 pip install python-docx 打开命令 python >>>import docx 没有报错,磨刀霍霍准备在pycharm中试一下 打开pycharm傻眼了... 找不到 docx模块..可是明明已经安装了..在D:\Python3_7_1\Lib\site-packages也找到了docx文件夹 几经搜索,终于知道了在pycharm中使用第三方包,

  • Python安装docx依赖包教程

    方法一. 主要问题是docx受lxml的影响,如果lxml的版本不对的话,docx根本装不上,不管你用pip,easy_install或者是用源代码包来装. 要到https://pypi.python.org/simple/lxml/去下载相应的lxml版本,安装之后直接pip install python-docx就可以安装上了! 方法二. 如果安装的是python2.6需要将python升级到2.7,然后pip install python-docx命令安装即可 补充:Python-docx

  • Python-docx 实现整体修改或者部分修改文字的大小和字体类型

    Python中可以用docx来生成word文档,docx中可以自定义文字的大小和字体等. 其中要整体修改文字的字体大小和字体,可以用以下方法: newfile = docx.Document() newfile.styles['Normal'].font.name = 'Times New Roman' newfile.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体') 设置字体的两句一定要一起用才能起作用,其中 n

  • python实现文件路径和url相互转换的方法

    本文实例讲述了python实现文件路径和url相互转换的方法.分享给大家供大家参考.具体实现方法如下: import urllib pathname = 'path/to/file/or/folder/' url = urllib.pathname2url(pathname) pathname = urllib.url2pathname(url) print pathname 运行结果如下: path\to\file\or\folder\ 希望本文所述对大家的Python程序设计有所帮助.

  • python获取文件路径、文件名、后缀名的实例

    实例如下所示: #########start 获取文件路径.文件名.后缀名############ def jwkj_get_filePath_fileName_fileExt(filename): (filepath,tempfilename) = os.path.split(filename); (shotname,extension) = os.path.splitext(tempfilename); return filepath,shotname,extension #########

  • python 拼接文件路径的方法

    如下所示: <code class="language-python">import os base_dir = os.path.dirname(__file__) # 获取当前文件目录 path = os.path.join(base_dir,'123.txt') # 获取文件拼接后的路径</code> 以上这篇python 拼接文件路径的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • python-docx文件路径问题的解决方案

    path = "test.docx"以工程下venv文件夹为父目录 补充:Python读取指定目录下指定后缀文件并保存为docx 最近有个奇葩要求 要项目中的N行代码 申请专利啥的 然后作为程序员当然不能复制粘贴 用代码解决.. 使用python-docx读写docx文件 环境使用python3.6.0 首先pip安装python-docx pip install python-docx 然后下面是脚本 修改目录,这里默认取脚本运行目录下的src文件夹 取.cs后缀的所有文件 读取并保

  • Python如何获取文件路径/目录

    一.获取文件路径实现 1.1 获取当前文件路径 import os current_file_path = __file__ print(f"current_file_path: {current_file_path}") __file__变量其实有个问题,当文件被是被调用文件时__file__总是文件的绝对路径:但当文件是直接被执行的文件时,__file__并不总是文件的绝对路径,而是你执行该文件时给python传的路径.比如你是python xxx/yyy.py形式执行的,那么此时

  • python 中open文件路径的选择问题解析

    一.问题描述 python 中使用open打开某个文件写入时,往往会发现需要写入的文件不在同级目录下.这样就需要根据文件的路径来找到并打开. 但往往有时绝对路径和相对路径,写入不正确就会打开失败. 二.解决方法 1.使用绝对路径 错误方法: 修改后的: 如果代表的是windows文件路径,则使用斜杆/和反斜杠\是一样的:如果代表的是网络文件路径,则必须使用 斜杆/ . 但是我不是很喜欢使用绝对路径,推荐使用相对路径. 2.使用相对路径 错误方法: 修改后的: 因为是处于非同级目录,所以需要在文件

  • Python读写docx文件的方法

    Python读写word文档有现成的库可以处理.我这里采用 python-docx.可以用pip install python-docx安装一下. 这里说一句,ppt和excel也有类似的库哦,而且是直接读取文件里面的xml数据.所以doc格式得另找其他库处理,doc格式不是基于xml的. 帮助文档:http://python-docx.readthedocs.org/en/latest/ 1.新建或打开文件.这个比较简单用docx的Document类,若指定路径则是打开文档:若没有指定路径则是

  • python读取中文路径时出错(2种解决方案)

    编码问题可能导致python读取中文路径时出错 解决方法一:路径拆分单独编码 import os root_path = 'E:\\project\\sk_man-master\\SK\\static\\sk\\new_clothes\\'+u'裤子' for file in os.listdir(root_path): print file.decode('gbk') 方法二:对全部路径用unicode格式编码 root_path = unicode('E:\\project\\sk_man-

  • Python常用的文件及文件路径、目录操作方法汇总介绍

    python的文件和路径操作函数基本上位于os和os.path模块中. os.listdir(dirname):列出dirname下的目录和文件 os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false os.path.isfile(name):判断name是不是一个文件,不存在name也返回false os.getcwd():获得当前工作目录 os.path.split(name):分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录

  • python 递归遍历文件夹,并打印满足条件的文件路径实例

    题目:利用协程来遍历目录下,所有子文件及子文件夹下的文件是否含有某个字段值,并打印满足条件的文件的绝对路径. #!/user/bin/env python # -*- coding:utf-8 -*- #grep -rl "python" D:\devtools\workspace\python\aaa import os def init(func): def wrapper(*args,**kwargs): res=func(*args,**kwargs) res.send(Non

随机推荐