999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Python的Excel文檔批量轉換生成自定義形式Word文檔工具的實現和應用

2021-12-08 12:24:30高熾揚崔寧寧
數字通信世界 2021年11期
關鍵詞:示意圖

高熾揚,王 健,崔寧寧

(北京賽迪軟件測評工程技術中心有限公司,北京 100000)

1 概述

電子表格文檔以數據展示直觀、操作使用便捷等特點,多年以來,在各行各業中廣泛的使用。Excel文檔作為當前主流的電子表格文檔,在某些使用場景下,可以作為一個小型的數據庫,來存儲各種業務的原始基礎數據。這些基礎數據如果要以書面正式的方式進行展示,通常需要用Word文檔以特定的組織形式來完成。本文通過對Excel文檔轉換生成Word文檔的需求進行分析,設計實現了一款基于Python的Excel文檔批量轉換生成自定義形式Word文檔的工具(以下簡稱“Excel文檔轉Word文檔工具”),并給出了一些該工具的應用場景,以便于提升相關領域文檔工作的效率。

2 設計工具的背景

在軟件測試領域,進行測試需求分析與策劃、測試設計與實現以及測試執行時,使用電子表格軟件編制測試項、測試用例,記錄測試執行結果,最終形成電子表格文檔,目前是一種相對簡單、高效的方式。在測試文檔的生成過程中,Excel文檔和Word文檔是最常用的文檔,在形成測試相關的Excel文檔后,只是完成了基礎數據的匯總的第一步,通常書面正式提交測試文檔成果時,需要將Excel文檔按照相關標準、要求,轉為特定形式Word文檔,以展示相關的數據信息。如圖1所示,例了測試過程中一種Excel文檔轉換生成Word文檔的場景。

圖1 Excel文檔轉換生成Word文檔示例圖

實現Excel文檔轉換生成Word文檔,通常可以使用Microsoft Word的“郵件合并”功能,通過選取包含基礎信息的Excel文檔作為數據源,在定義了合并域的Word模板中,完成Excel文檔到Word文檔的轉換生成。“郵件合并”功能對數據字段簡單、模板固定的Excel和Word文檔轉換生成相對容易完成,但是對于數據字段較多,模板經常變更的Excel和Word文檔,每次轉換生成都需重新選擇數據源和定義模板,比較容易出錯,并且在Excel文檔生成Word文檔之后,往往還需要進行大量的人工格式調整、文檔整合的工作,難以一次性生成所需要的Word文檔,效率不高。

基于Python實現的Excel文檔轉Word文檔工具,無須依賴特定表頭的Excel文檔,只要按照一定的規則在Word模板文檔中引用Excel文檔中表頭的內容,通過工具即可完成Word文檔的批量轉換生成功能,解決了由于Excel文檔數據字段較多,Word文檔模板經常變更等原因,導致的文檔轉換生成效率低下的問題。

3 工具的實現

Excel文檔轉Word文檔工具基于Python的原生庫tkinter、第三方庫xlrd和python-docx-template實現。其中,tkinter庫用于人機交互界面的制作,xlrd庫用于從Excel文檔讀取數據和格式化的信息。python-docx-template庫用于讀取使用類Jinja2語法標記過的Word模板文檔。工具包括輸入模塊、文檔生成處理模塊和輸出模塊。工具的處理流程,如圖2 所示。

圖2 Excel文檔轉Word文檔工具處理流程示意圖

輸入模塊需要準備Excel數據文檔和Word模板文檔。

(1)Excel數據文檔中,首行作為表頭,其余行作為數據行,表頭可以根據需要自行訂制。如果Excel數據文檔有多個Sheet頁,則需要各Sheet頁有相同的表頭。

(2)Word模板文檔中,固定的內容和格式可以根據需要進行自定義,重復的內容和格式可以使用模板標簽進行填充,模板標簽采用類Jinja2的語法進行定義,包括控制標簽和內容標簽,控制標簽可以進行邏輯和循環的控制,內容標簽以變量的形式獲取Excel文檔中的數據。如:

{%p jinja2_tag%}代表段落的控制標簽;

{%tr jinja2_tag%}代表表格行的控制標簽;

{%tc jinja2_tag%}代表表格列的控制標簽;

{{}}代表變量。

同時,工具定義了固定的標簽變量,包括“break”、“sheets”、“tstype”、“tables”和“allcases”等共5種。“break”代表空字符,在Word文檔中起到分隔的作用;“sheets”代表一個Excel文檔所有sheet頁的數據集合,其包含兩個主要元素:測試類型(“tstype”)和單個sheet頁的行數據集合(“tables”);“allcases”代表一個Excel文檔中包含的所有行,并在每行末尾增加測試類型元素的數據集合,是區別于“sheets”的,儲存Excel文檔中全部數據的另一種形式。“sheets”和“allcases”列表的結構,如圖3所示。

文檔生成處理模塊包括“測試項生成”、“測試用例記錄”功能、“報告其他文檔”和“正向追蹤表”功能。“測試項生成”功能,工具可以根據配置讀取Excel文檔首例值指定列的數據;“測試用例記錄”功能、“報告其他文檔”和“正向追蹤表”功能,工具會讀取Excel文檔有數據的全部列;“正向追蹤表”功能,可以按照軟件需求的順序,生成軟件需求至測試需求的正向追蹤關系表。通過選擇不同的功能,可以自動切換對應的模板。

輸出模塊可以按照規則讀入的Excel數據,將表格中對應輸入填入Word模板中含有內容標簽的相應位置,通過邏輯和循環等控制標簽的作用,進行批量、重復處理,最終完成Word文檔的生成。工具的界面圖,如圖4所示。

圖4 Excel文檔轉Word文檔工具界面圖

4 工具的應用

Excel文檔轉Word文檔工具采用單機運行的方式,基于Python實現。由于Python的跨平臺特性,工具可以在MacOS、Linux、Windows操作系統上運行使用。Excel文檔轉Word文檔工具通過自定義Excel數據文檔和Word模板的方式,不僅可以用于軟件測試文檔的轉生成,還可以用于其他類型工作文檔的轉換生成。

在軟件測試文檔生成的工作場景中,如圖5所示,為某系統的測試用例Excel文檔,該文檔包括“文檔審查”和“功能測試”兩個Sheet頁,Sheet頁表頭和多行數據。

圖5 測試場景輸入文檔之Excel文檔示意圖

如圖6所示,為測試用例的Word模板,在該模板中有固定的、重復的表格內容和段落格式。通過循環控制標簽的定義,如“{%p for sheet in sheets%}…{%p endfor%}”、“{%tr for row in sheet.tables%}…{%tr endfor%}”等,可以讓相同類型的數據,按照需要的格式進行展示;通過引用Excel文檔表頭的變量“{{row.用例名稱}}”、“{{row.用例描述}}”和“{{row.設計人員}}”等內容標簽可以獲取Excel文檔中對應的數據信息。

圖6 測試場景輸入文檔之Word模板文檔示意圖

工具對“測試用例Excel文檔”和“測試用例Word模板”的處理,最終可以生成所需要的“測試用例Word文檔”,如圖7所示,生成完成后無需對Word文檔的內容和格式進行額外的處理,即可直接打開使用。

圖7 測試場景輸出文檔之Word生成文檔示意圖

在商務文檔生成的工作中,經常會有根據專家名單制作若干專家邀請函的場景。如圖8所示;為專家信息Excel文檔,該文檔有一個Sheet頁,并包含表頭和多行數據。

圖8 商務場景輸入文檔之Excel文檔示意圖

如圖9所示,為專家邀請函的Word模板,在該模板中有固定的、重復的標題、段落內容和格式。通過循環控制標簽的定義,如“{%p for sheet in sheets %}…{%p endfor %}”、“{%p for row in sheet.tables %}…{%p endfor %}”等,可以讓相同類型的數據,按照需要的格式進行展示;通過引用Excel文檔表頭的變量“{{row.專家姓名}}”、“{{row.會議日期}}”和“{{row.通知日期}}”等內容標簽可以獲取Excel文檔中對應的數據信息。

圖9 商務場景輸入文檔之Word模板文檔示意圖

工具對“專家信息Excel文檔”和“專家邀請函Word模板”的處理,最終可以生成所需要的“專家邀請函Word文檔”,如圖10所示,生成完成后無需對Word文檔的內容和格式進行額外的處理。

圖10 商務場景輸出文檔之Word生成文檔示意圖

在進行其他文檔工作時,如測試報告、測試記錄的批量生成,多份表格簡歷轉換生成,名片信息的生成,物品標簽的生成等Excel文檔轉Word文檔的應用場景,亦可通過Excel文檔轉Word文檔工具來實現。

5 結束語

基于Python實現的Excel文檔批量轉換生成自定義形式Word文檔的工具,將復雜的文檔轉換工作簡化,解決了目前軟件測試工作中大量Excel文檔轉換為Word文檔的效率問題,節省了大量測試文檔工作時間。該工具通過對Word模板的自定義編制,還可以應用于商務、行政等領域的Excel文檔轉換生成Word文檔工作,亦可提升相關領域文檔工作的效率。

猜你喜歡
示意圖
構建示意圖,深度把握
先畫示意圖再解答問題
黔西南州旅游示意圖
當代貴州(2019年41期)2019-12-13 09:28:56
節日帽
兩張圖讀懂“青年之聲”
中國共青團(2015年7期)2015-12-17 01:24:38
“三定兩標”作好圖
貧困村建檔立卡工作示意圖及參考文本
中國扶貧(2014年8期)2014-06-27 15:33:39
貧困戶建檔立卡工作示意圖及參考文本
中國扶貧(2014年8期)2014-06-27 04:09:02
“三定兩標”作好圖
俄歐天然氣管道示意圖
能源(2014年3期)2014-03-27 09:55:20
主站蜘蛛池模板: 国产在线精彩视频论坛| 美女被操91视频| 亚洲欧美一区在线| 久久人人97超碰人人澡爱香蕉| 亚洲无线视频| 久久午夜夜伦鲁鲁片无码免费| 国产精品白浆无码流出在线看| 黄色网站在线观看无码| 性喷潮久久久久久久久| 国产天天射| 国产人成乱码视频免费观看| 国产精品亚洲五月天高清| 2020国产免费久久精品99| 特级毛片免费视频| 国产在线自乱拍播放| 精品久久久久久成人AV| 亚洲免费毛片| 日韩人妻少妇一区二区| 99热亚洲精品6码| 九色综合视频网| 欧美日韩中文国产| 99热国产这里只有精品无卡顿"| 国产日韩欧美精品区性色| 亚洲国产精品一区二区第一页免| 国产又黄又硬又粗| 欧洲av毛片| 激情成人综合网| 日韩精品成人网页视频在线| 国产在线无码av完整版在线观看| 亚洲第一在线播放| 婷婷丁香色| 亚洲天堂区| 国内精品伊人久久久久7777人| 在线网站18禁| 国产69囗曝护士吞精在线视频| 国产午夜一级毛片| 欧美成人午夜在线全部免费| 亚洲欧洲一区二区三区| 在线观看91香蕉国产免费| 日韩精品高清自在线| 欧美天堂久久| 精品国产91爱| 欧美性久久久久| 最新亚洲av女人的天堂| 日本成人精品视频| 红杏AV在线无码| 91系列在线观看| 在线观看无码av免费不卡网站| 国产毛片高清一级国语| 欧美色综合网站| 亚洲精品动漫在线观看| 亚洲欧美日韩天堂| 精品一区二区三区中文字幕| 亚洲无码在线午夜电影| 91原创视频在线| 国产精品性| 一区二区偷拍美女撒尿视频| 五月婷婷欧美| 在线欧美一区| 亚洲免费三区| 精品国产美女福到在线不卡f| 天天综合网亚洲网站| 欧美一区二区丝袜高跟鞋| 色网站免费在线观看| 亚洲伊人电影| 国产成人无码Av在线播放无广告| 欧美亚洲香蕉| 国产在线八区| 97久久精品人人| 女人av社区男人的天堂| 亚洲国产精品VA在线看黑人| 亚洲电影天堂在线国语对白| 一区二区三区成人| 精品人妻无码中字系列| 女人18一级毛片免费观看| 久久国产精品麻豆系列| 国产精品福利社| 亚洲综合久久一本伊一区| 久久国产精品无码hdav| 黄色网站不卡无码| 日本不卡视频在线| 国产国语一级毛片在线视频|