有这么一个需求:有近1000个临床路径,给的doc格式的文档,里面有文字描述形式的住院流程和表格形式的临床路径表单,现在需要将其中的表格按照模板存为excel格式,导入医院HIS。

doc中表格是这样:

excel模板是这样:

时间段排序12345,主要诊疗工作、重点医嘱、主要护理工作排序123,组合成1-1、1-2、1-3、2-1形式的单元标记。

手动做一两个没问题,多了就太麻烦了,想想办法批量处理吧。

先考虑一下如何读取word中的表格,在网上查询、踩坑之后总结如下:

环境是Python3.5,网上先搜到的win32com和docx不好用,要用的是python-docx模块,When import docx in python3.3 I have error ImportError: No module named 'exceptions' 这个里面说明了Python3x与python-docx兼容。另外搜到的是,python-docx不支持读取doc,需要先将doc转存为docx了再处理。

只需要导入:

from 

主要操作如下:

转换doc到docx:

if 

建表格:

#过滤文本

检查表格是否为7行,不是的话不进行后续的处理:

#取每一个表格,检查表格是否为7行,表格行数存tablelength中

WORD的表格中,第一列、第一行,第五行及以上的文字都不需要,跳过。每一列作为序号,每一大行作为小序号;内容分行,与归属路径和单元标记一起写进excel表格中保存;

#取每一个表格

运行结果如下,打印日志提取出了要写入表格的内容,生成了上述模板:

批量处理:

def 

生成的excel模板加上自定义的归属路径编号就可以往HIS里面上传制作临床路径了。

除开两个主要模块之外的其它部分:

import 

python中文件路径格式_Python应用-临床路径格式转换相关推荐

  1. python中文件描述符_Python中的描述符

    python中文件描述符 In Python, a class that implements a get, set or delete methods for an object is called ...

  2. python中文件读取失败_Python文件读取与异常

    文件和异常 with open("text.txt") as p:读取文件目录下的text.txt文件并返回文件对象存储在p变量 text=p.read()读取p变量的内容 存储到 ...

  3. python中文件读取失败_Python IOError:文件未打开以进行读取

    我正在尝试制作一个程序,更新csv行的0-9范围,这将是ID号.因此,在搜索id号之后,它会提示用户输入替换值,正如您在下面代码的replace部分中看到的那样.因为csv是逗号分隔的,所以我用逗号连 ...

  4. python中文件的打开与关闭_python中的文件打开与关闭操作命令介绍

    python中的文件打开与关闭操作命令介绍 1.文件打开与关闭 在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件 open(文件名,访问模式). f = open('t ...

  5. python修改文件的方法_python中文件操作实现全文或单行替换方法

    python修改文件时,使用w模式会将原本的文件清空/覆盖.可以先用读(r)的方式打开,写到内存中,然后再用写(w)的方式打开.替换文本中的taste 为 tasting Yesterday when ...

  6. Python中文件操作和文件夹操作的学习笔记

    目录 1 前言 2 工作目录设置 设置工作目录: 获取当前运行文件目录 将工作目录重置为当前运行文件的父目录 遍历文件夹中所有的子文件(包含子文件.孙文件): 3 判断文件(夹)是否存在 4 文件读写 ...

  7. python 中文件输入输出及os模块对文件系统的操作

    整理了一下python 中文件的输入输出及主要介绍一些os模块中对文件系统的操作. 文件输入输出 1.内建函数open(file_name,文件打开模式,通用换行符支持),打开文件返回文件对象. 2. ...

  8. python36_第36 p,就这几个方法,Python中文件的操作

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第X篇文章,第二阶段的课程:Python基础知识:Python中文件的操作(下篇). 学习本课程,建议先看一遍:[计算机基础知识]课 ...

  9. python相对路径-Python中的绝对路劲和相对路径

    1.绝对路径 os.path.abspath("文件名"): 显示的是一个文件的绝对路劲 eg: >>> import os >>> os.ch ...

最新文章

  1. PHP+socket+SMTP、POP3协议发送、接收邮件
  2. 大系统化小之后,微信如何解决大规模微服务下的难题?
  3. tftp ubuntu安装
  4. Java8 stream filter map
  5. 基于事件驱动架构构建微服务第10部分:在docker容器内运行单元测试
  6. (马世龙)Linux下CACTI完全搭建技术文档二
  7. Bash 使用技巧大补贴
  8. 光纤收发器的原理及应用_基于砷化镓传感器的光纤测温原理及其在地铁中的应用...
  9. 想为自己设置的软件加一个属于自己的图标吗?使用AWT_Swing_图标解决你的问题(源码解析)
  10. 清除tomcat缓存
  11. 微信小程序可以申请软件著作权吗?亲测可以的
  12. 小小知识点(三十六)EXCEL闪退解决办法
  13. 1号信令、7号信令和PRI信令
  14. 【180630】VC++画面炫丽的2D 太空射击游戏源码
  15. 混音合成效果器:Cradle The God Particle for Mac
  16. python调用R语言
  17. 盘点10个堪称神器,却不为人所知的小众软件
  18. 曲线图chart.js插件例子
  19. 51单片机,时钟频率,机器周期,与执行指令的时间
  20. 【计算机毕业设计】201论坛系统设计与实现

热门文章

  1. KEILC51警告:WARNING L15: MULTIPLE CALL TO SEGMENT
  2. mysql online ddl
  3. BZOJ 1046: [HAOI2007]上升序列【贪心+二分状态+dp+递归】
  4. http超文本传输协议的http头部分析
  5. 外贸EDM邮件营销效率低的原因分析
  6. java适配器各三种_适配器三种
  7. 推荐 12 个好用的 React 的开源项目,开发效率又能提升了!
  8. Linux如何修改用户名?
  9. 你居然还去服务器上捞日志,搭个日志收集系统难道不香么!
  10. Spring AOP相关术语解释及简单使用