当前位置: 首页 > news >正文

腾讯云可以做网站吗网页设计作业分析文档

腾讯云可以做网站吗,网页设计作业分析文档,网站空间怎么续费,公司支付网站建设费进什么费用办公自动化-Python如何提取Word标题并保存到Excel中#xff1f; 应用场景需求分析实现思路实现过程安装依赖库打开需求文件获取word中所有标题去除不需要的标题创建工作簿和工作表分割标题功能名称存入测试对象GN-TC需求标识符存入测试项标识存入需求标识符 完整源码实现效果学… 办公自动化-Python如何提取Word标题并保存到Excel中 应用场景需求分析实现思路实现过程安装依赖库打开需求文件获取word中所有标题去除不需要的标题创建工作簿和工作表分割标题功能名称存入测试对象GN-TC需求标识符存入测试项标识存入需求标识符 完整源码实现效果学习总结 应用场景 为啥要提这个话题呢测试小伙伴遇到一个问题他的痛点是想把需求文档word版中的需求标识符、功能名称挨个复制到测试计划中 这对他来说是非常痛苦的如果需求文档内容过于庞大对他来说需要好几天才能复制完这些标识符 具体的比如以下word 他想把以上word标题中的标识符和名称复制到如下表格中 测试对象测试项标识需求标识组织管理GN-TC-US-ADMIN-ZZGLUS-ADMIN-ZZGL组织管理GN-TC-US-ADMIN-ZZGLUS-ADMIN-ZZGL组织管理GN-TC-US-ADMIN-ZZGLUS-ADMIN-ZZGL组织管理GN-TC-US-ADMIN-ZZGLUS-ADMIN-ZZGL组织管理GN-TC-US-ADMIN-ZZGLUS-ADMIN-ZZGL 针对这个简单的需求如何用python来实现呢 需求分析 需求的标题为序号[标识符]功能名称测试计划中表格内容 字段说明测试对象对应需求中的功能名称测试项标识GN-TC需求中的标识符需求标识符需求中的标识符 经过分析其实就是把需求中的标题提取出来然后进行分割分别写入测试计划对应的表格中即可。 实现思路 打开指定目录下的需求文档获取需求文档中的所有标题当标题中只有符号“[” 和 ]时列表创建excel工作簿新建工作表给工作标添加表头比如测试对象、测试项标识、需求标识分割获取到的标题并存入excel对应的表头下。 实现过程 安装依赖库 我们使用Python的python-docx库和openpyxl库进行以上内容实现那么需要安装这两个库 pip install python-docx pip install openpyxl如果没有网络需要在本地单独安装python-docx有以下两个依赖 lxml和typing-extensions C:\Users\Administratorpip install python-docx Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Requirement already satisfied: python-docx in d:\python37\lib\site-packages (1.1.0) Requirement already satisfied: lxml3.1.0 in d:\python37\lib\site-packages (from python-docx) (4.6.3) Requirement already satisfied: typing-extensions in d:\python37\lib\site-packages (from python-docx) (4.7.1)如果没有网络需要在本地单独安装openpyxl有以下两个依赖 jdcal和 et-xmlfile C:\Users\Administratorpip install openpyxl Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Requirement already satisfied: openpyxl in d:\python37\lib\site-packages (3.0.5) Requirement already satisfied: jdcal in d:\python37\lib\site-packages (from openpyxl) (1.4.1) Requirement already satisfied: et-xmlfile in d:\python37\lib\site-packages (from openpyxl) (1.0.1)打开需求文件 需要导入对应的库文件名称写自己的需求文件即可 import docx from openpyxl import Workbookdoc docx.Document(./XX需求.docx)获取word中所有标题 先创建和列表用于存放标题 headings []for para in doc.paragraphs:if para.style.name.startswith(Heading):headings.append(para.text) print(headings)此时会输出所有的标题 [XX管理系统, [US-ADMIN]ADMIN, [US-ADMIN-ZZGL]组织管理, [US-ADMIN-ZZGL-YHGL]用户管理, 功能描述, 输入输出, 数据流向, [US-ADMIN-ZZGL-JGYHGL]机构用户管理, 功能描述, 输入输出, 数据流向, [US-ADMIN-PZGL]配置管理, [US-ADMIN-PZGL-ZZJG]组织机构, 功能描述, 输入输出, 数据流向, [US-ADMIN-PZGL-GWXX]岗位信息, 功能描述, 输入输出, 数据流向, [US-ADMIN-PZGL-JSXX]角色信息,功能描述, 输入输出, 数据流向, [US-AQGLY]SUPERADMIN,[US-SUPERADMIN-XTPZ]系统配置, [US-SUPERADMIN-XTPZ-PZGL]配置管理,功能描述, 输入输出, 数据流向, [US-SUPERADMIN-YHPZ]用户配置,[US-SUPERADMIN-YHPZ-YHJS]用户角色, 功能描述, 输入输出, 数据流向, [ US-SUPERADMIN-YHPZ-QXFP]权限分配, 功能描述, 数据流向, [US-SUPERADMIN-YHPZ-CZMM]重置密码, 功能描述, 输入输出, 数据流向, [US-SUPERADMIN-RZ]日志, 功能描述, 输入输出, 数据流向]去除不需要的标题 以上获取所有标题后有的不是我们想要的比如功能描述、输入输出、数据流向等标题是不需要的我们需要的标题是比如[US-SUPERADMIN-RZ]日志标题获取后判断是否有符号“[” 和 “]”如果有再存入列表 headings []for para in doc.paragraphs:if para.style.name.startswith(Heading):if [ in para.text or ] in para.text:headings.append(para.text) print(headings)此时就去掉了多余的标题内容 [[US-ADMIN]ADMIN, [US-ADMIN-ZZGL]组织管理, [US-ADMIN-ZZGL-YHGL]用户管理, [US-ADMIN-ZZGL-JGYHGL]机构用户管理, [US-ADMIN-PZGL]配置管理, [US-ADMIN-PZGL-ZZJG]组织机构,[US-ADMIN-PZGL-GWXX]岗位信息, [US-ADMIN-PZGL-JSXX]角色信息, [US-AQGLY]SUPERADMIN, [US-SUPERADMIN-XTPZ]系统配置, [US-SUPERADMIN-XTPZ-PZGL]配置管理, [US-SUPERADMIN-YHPZ]用户配置, [US-SUPERADMIN-YHPZ-YHJS]用户角色, [ US-SUPERADMIN-YHPZ-QXFP]权限分配, [US-SUPERADMIN-YHPZ-CZMM]重置密码, [US-SUPERADMIN-RZ]日志]创建工作簿和工作表 创建一个工作簿然后在工作簿中创建一个工作表并在工作表中设置表头为测试对象、测试项标识、需求标识 wb Workbook()sheet wb.create_sheet(data)# ws wb.active headers [测试对象, 测试项标识, 需求标识符] for col_num, header in enumerate(headers, start1):sheet.cell(row1, columncol_num, valueheader)分割标题 去掉标题中的左书名号[使用右书名号“]”进行分割左边即为需求标识符右边即为功能名称拼接测试项标题为GN-TC需求标识符 c3 [] c5 [] c7 [] for content in headings:c1 content.strip([)c2 c1.split(])[0]c3.append(c2)c4 c1.split(])[1]c5.append(c4)c6 GN-TC- c2c7.append(c6)print(c1) print(c3) print(c5) print(c7)其中c1为去掉所有左书名号 US-ADMIN]ADMIN US-ADMIN-ZZGL]组织管理 US-ADMIN-ZZGL-YHGL]用户管理 US-ADMIN-ZZGL-JGYHGL]机构用户管理[US-ADMIN-PZGL]配置管理 US-ADMIN-PZGL-ZZJG]组织机构 US-ADMIN-PZGL-GWXX]岗位信息[US-ADMIN-PZGL-JSXX]角色信息[US-AQGLY]SUPERADMIN US-SUPERADMIN-XTPZ]系统配置[US-SUPERADMIN-XTPZ-PZGL]配置管理 US-SUPERADMIN-YHPZ]用户配置 US-SUPERADMIN-YHPZ-YHJS]用户角色US-SUPERADMIN-YHPZ-QXFP]权限分配 US-SUPERADMIN-YHPZ-CZMM]重置密码 US-SUPERADMIN-RZ]日志c3所有需求标识符 [US-ADMIN, US-ADMIN-ZZGL, US-ADMIN-ZZGL-YHGL,US-ADMIN-ZZGL-JGYHGL, [US-ADMIN-PZGL, US-ADMIN-PZGL-ZZJG, US-ADMIN-PZGL-GWXX, [US-ADMIN-PZGL-JSXX, [US-AQGLY,US-SUPERADMIN-XTPZ, [US-SUPERADMIN-XTPZ-PZGL, US-SUPERADMIN-YHPZ,US-SUPERADMIN-YHPZ-YHJS, US-SUPERADMIN-YHPZ-QXFP, US-SUPERADMIN-YHPZ-CZMM, US-SUPERADMIN-RZ]c5功能名称 [ADMIN, 组织管理, 用户管理, 机构用户管理, 配置管理, 组织机构, 岗位信息, 角色信息, SUPERADMIN, 系统配置, 配置管理, 用户配置, 用户角色, 权限分配, 重置密码, 日志]c7测试项名称 [ GN-TC-US-ADMIN, GN-TC-US-ADMIN-ZZGL, GN-TC-US-ADMIN-ZZGL-YHGL, GN-TC-US-ADMIN-ZZGL-JGYHGL, GN-TC-US-ADMIN-PZGL, GN-TC-US-ADMIN-PZGL-ZZJG, GN-TC-US-ADMIN-PZGL-GWXX, GN-TC-US-ADMIN-PZGL-JSXX, GN-TC-US-AQGLY, GN-TC-US-SUPERADMIN-XTPZ, GN-TC-US-SUPERADMIN-XTPZ-PZGL, GN-TC-US-SUPERADMIN-YHPZ, GN-TC-US-SUPERADMIN-YHPZ-YHJS, GN-TC-US-SUPERADMIN-YHPZ-QXFP, GN-TC-US-SUPERADMIN-YHPZ-CZMM, GN-TC-US-SUPERADMIN-RZ]功能名称存入测试对象 for i, heading in enumerate(c5):sheet.cell(rowi2, column1, valueheading)GN-TC需求标识符存入测试项标识 for i, heading in enumerate(c7):sheet.cell(rowi2, column2, valueheading)存入需求标识符 for i, heading in enumerate(c3):sheet.cell(rowi2, column3, valueheading)完整源码 # -*- coding:utf-8 -*- # 作者虫无涯 # 日期2024/5/23 # 文件名称test_word.pyimport docx from openpyxl import Workbookdoc docx.Document(./XX需求.docx)headings []for para in doc.paragraphs:if para.style.name.startswith(Heading):if [ in para.text or ] in para.text:headings.append(para.text) # print(headings)wb Workbook()sheet wb.create_sheet(data)# ws wb.active headers [测试对象, 测试项标识, 需求标识符] for col_num, header in enumerate(headers, start1):sheet.cell(row1, columncol_num, valueheader)# print(headings)c3 [] c5 [] c7 [] for content in headings:c1 content.strip([)c2 c1.split(])[0]c3.append(c2)c4 c1.split(])[1]c5.append(c4)c6 GN-TC- c2c7.append(c6) # print(c1) # print(c3) # print(c5) # print(c7)for i, heading in enumerate(c5):sheet.cell(rowi2, column1, valueheading)for i, heading in enumerate(c7):sheet.cell(rowi2, column2, valueheading)for i, heading in enumerate(c3):sheet.cell(rowi2, column3, valueheading)wb.save(./data.xlsx)实现效果 学习总结 以上还有优化的空间比如 字符串中间有空格或者其他多余的内容如何处理新建的excel如何对表头进行字体、颜色等设置表格列宽如何调整整个表格字体如何设置 等等。
http://www.tj-hxxt.cn/news/234263.html

相关文章:

  • 合肥做网站哪家好公司网站建设佛山哪家专业
  • 一个人能建网站吗阿里巴巴网站建设
  • 常州建站价格国外浏览器搜索引擎入口
  • 济南网站建设网站制作电商外贸有什么平台
  • 学雷锋做美德少年网站宿迁企业网站建设
  • 河南品牌网站建设做一个15页的网站怎么做
  • 做头像一个字的网站沈阳做网站哪好
  • 纯静态网站模板网站站制做
  • 猪八戒里面做网站骗子很多河池网站建设公司
  • 网站源码 com大全怎样建设公司的网站
  • 免费广告平台百度seo关键词优化电话
  • 网站网页建设与制作怎么做账如何建立免费的网站
  • 企业网站开发效果网络宣传平台有哪些
  • 专业提供网站建设服务的企业网站开发和前端是一样吗
  • 网站怎么用ftp修改网页内容哪些动物可以做网站名
  • 安定网站建设做网站能申报只是产权么
  • 网站建设哪个制作英文网站案例
  • 优化网站性能监测什么网站上面能接点小活做
  • 深圳沙井做公司网站机械工业第六设计研究院有限公司
  • 毕业设计网站设计步骤网站备案核验单怎么选
  • 外汇网站源码 asp唐山正规做网站的公司
  • 可以免费秒玩游戏的网站wordpress子主题插件
  • 焦作做网站推广无忧网站建设推荐
  • 网站备案接入服务单位校园生活网页设计
  • 备案注销网站还有吗互联网公司的招聘信息
  • 烟台网站设计公司平面设计和网页设计
  • 购物网站建设市场四川网站seo
  • 游戏网站做关键字如何在网站中做公示信息
  • 泰州网站建设解决方案wordpress中文主题下载地址
  • 做h的动漫在线观看网站南通网站建设南通