温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在Python中使用docx模块

发布时间:2021-03-18 16:37:46 来源:亿速云 阅读:342 作者:Leah 栏目:开发技术

怎么在Python中使用docx模块?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

首先批量将doc转化为Python能够打开并读写的docx文档:

#!/usr/bin/env python # -*- coding: utf-8 -*- # File : 批量将doc转换为docx.py # Author: roohom # Date : 2018/9/17 0017     ''' 使用Word批量将doc转化为docx   - 调用win32com,打开Word应用程序   - 打开doc   - 保存成docx   - 关闭word   - 转入下一个doc并重复上述操作 '''   from win32com import client as wc   def doSaveAas():   word = wc.Dispatch('Word.Application')   #延时5秒钟,防止由于系统配置原因还没打开Word就进行下一步程序   #time.sleep(5)   doc = word.Documents.Open(r'{0}'.format(word_name)) # 目标路径下的文件   doc.SaveAs(r'{0}'.format(word_docx_name), 16) # 转化后路径下的文件,16表示docx格式   doc.Close()   word.Quit()   if __name__ == '__main__':   k = 1   i = 3   j = 3   while True:     word_name = "D:\学习区\Python\python二级考试试题\选择题\python二级考试试题{0}.doc".format(i)     word_docx_name = "D:\学习区\Python\python二级考试试题\选择题\python二级考试试题{0}".format(j)     doSaveAas()     i += 1     j += 1     print("已完成{0}个word从doc到docx的转换".format(k))     k += 1

结果是这个样子的:

怎么在Python中使用docx模块

再进行我们的正题,开始刷题:

#!/usr/bin/env python # -*- coding: utf-8 -*- # File : MyDemo.py # Author: roohom # Date : 2018/9/17 0017     ''' 刷题脚本   - python对文件读写等操作的强大功能     - 使用docx模块对docx文档进行读写       - python不支持直接打开并读取word文档,因此需要使用方法将doc转化为docx,方法详见doc_to_docx.py   - 原理     - 打开经转化后的docx文档,并逐行读文件内容     - 判断是否读到“正确内容”语句       - 是,设置用户输入,提示输入用户的答案       - 否,继续读操作     - 比较用户的答案与正确答案是否一样       - 是,输出正确提示       - 否,输出错误提示     - 继续下一题,重复上述操作   - 拓展延伸      - 可以在程序主入口处设置用户输入,输入用户想要打开的路径、文件,程序根据文件名、路径等进行上述操作      - 可以根据用户输入情况设置加分减分,并根据全部答案情况,分析错误题目,后续将错题重修整理收集,反馈给用户 '''   import docx ''' 字符串比较的一种麻烦方法: def comparison(a, b):   ib=0   for ia in range(len(a)):     if ord(a[ia:ia+1])-ord(b[ib:ib+1])==0:       ib=ib+1       if ib==len(b):         print('你的答案正确!')     else:       print('你的答案错误!')       break '''   def comparison(a, b):   if a == b :     print("你的答案正确!")   else:     print("你的答案错误!")   if __name__ == '__main__':   file = docx.Document(r"D:\学习区\Python\python二级考试试题\选择题\python二级考试试题01.docx")   print("==================全国计算机二级考试之Python刷题==================")     for p in file.paragraphs:     m = p.text     if "正确答案: " in m:       ans = input("请输入你的答案:")       a = "正确答案: {0} ".format(ans)       print(a)       b = m       print(b)       comparison(a, b)       print()       print("==================全国计算机二级考试之Python刷题==================")     else:       print(m)

结果是这个样子的:

怎么在Python中使用docx模块

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI