python读取所有sheet内容到另一个文件中

 实现效果:

将原excel中的步骤、预期效果列按回车拆成多行数据,其余字段值填充其他数据

实现结果:

# This is a sample Python script.# Press Shift+F10 to execute it or replace it with your code.
# Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings.# def print_hi(name):
#     # Use a breakpoint in the code line below to debug your script.
#     print(f'Hi, {name}')  # Press Ctrl+F8 to toggle the breakpoint.
#
#
# # Press the green button in the gutter to run the script.
# if __name__ == '__main__':
#     print_hi('PyCharm')
#
# # See PyCharm help at https://www.jetbrains.com/help/pycharm/import openpyxl, redef SplitLine():book = openpyxl.load_workbook(file_path + "\\" + raw_excel)    # 读取原excelwb = book.activebook_2 = openpyxl.load_workbook(file_path + "\\" + "result.xlsx")  # 读取新建的resultwb_2 = book_2.activename = ["TCID", "Test Summary", "Test Priority", "Step", "Data", "Expected Result", "Test Repository Path","Pre-condition", "TestCaseType", "Automation", "LinkType", "LinkIssue"]# name = ["所属模块(*)", "用例标题(*)", "前置条件", "步骤", "预期结果", "优先级"]  # result表格的首行内容for a in range(1, len(name) + 1):wb_2.cell(row=1, column=a, value=name[a - 1])  # 写入result的首行j = 2 #新建excel的行数k = 0 #回车数量b = 2#遍历所有的sheetfor sheet_name in book.sheetnames:print(book.sheetnames)sheet = book[sheet_name]a = sheet.cell(2,2).valueprint(a)print(sheet)print(sheet.max_row)with open(file_path + "\\" + "result.xlsx",encoding='utf-8') as f:for i in range(2, sheet.max_row+1):# 读取原excel的每行内容Test_Repository_Path = sheet.cell(i, 1).valuetry:Test_Repository_Path = "/对外系统用例/"+sheet_name+"/"+Test_Repository_Pathexcept:print("继续执行")# print(wb.cell(1, 1).value)print(Test_Repository_Path)Test_Summary = sheet.cell(i, 2).valuePre_condition = sheet.cell(i, 3).valueData = sheet.cell(i, 4).valueprint(Data)Expected_Result = sheet.cell(i, 5).value# 将内容写入result中wb_2.cell(row=j, column=7, value=Test_Repository_Path)wb_2.cell(row=j, column=2, value=Test_Summary)wb_2.cell(row=j, column=3, value="Medium")wb_2.cell(row=j, column=8, value=Pre_condition)wb_2.cell(row=j, column=5, value=Data)wb_2.cell(row=j, column=6, value=Expected_Result)wb_2.cell(row=j, column=9, value="功能用例")wb_2.cell(row=j, column=10, value="否")wb_2.cell(row=j, column=1, value=b-1)wb_2.cell(row=j, column=4, value=1)try:# 对Data中的内容进行识别if '\n' in Data:k = Data.count("\n")k = k + 1  # 数据量比“;”的个数多一个Data_2 = []Expected_Result_2 = []#循环所有的回车数量,分隔到每一行中for p in range(0, k):Data_2.append(re.split(r"[\n]\s*", Data.split("\n")[p]))Expected_Result_2.append(re.split(r"[\n]\s*", Expected_Result.split("\n")[p]))# print(Data_2)# print(Data_2[p][0])# # print(Data_2[0][p])wb_2.cell(row=j, column=5, value=str(Data_2[p][0]))wb_2.cell(row=j, column=6, value=str(Expected_Result_2[p][0]))wb_2.cell(row=j, column=4, value=p+1)wb_2.cell(row=j, column=1, value=b - 1)# print(wb_2.cell(row=j, column=4).value)j = j + 1else:wb_2.cell(row=j, column=5, value=Data)wb_2.cell(row=j, column=6, value=Expected_Result)wb_2.cell(row=j, column=1, value=b - 1)j = j + 1except:print("继续执行")b = b + 1book_2.save(file_path + "\\" + "result.xlsx")  # 保存excelif __name__ == "__main__":file_path =r'C:\Users\12133\Desktop'raw_excel ='对外系统用例.xlsx'# file_path = input("file_path:")# raw_excel = input("excel_name:")SplitLine()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/247488.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【鸿蒙应用开发】开发环境搭建及IDE安装使用

1.下载安装包 安装包下载地址: 点击跳转下载页面 可以根据自己的操作系统选择对应版本下载。 本文以Windows安装为例,Mac安装方式相同 2. 安装 下载好后,打开安装包,进入安装界面: 点击Next,进入安…

LInux组管理及拓展

目录 一、Linux组管理 (一)、组的概述 1.概述 2.作用 (二)、组操作 1.创建 2.修改 3.删除 4.添加用户 二、用户信息查看 (一)、id (二)、finger (三&#x…

【专题】【中值定理-还原大法】

1)构造辅助函数 2)罗尔定理: 闭区间连续,开区间可导 F(a)F(b) 3)F‘(ξ)0,原命题得证 极限保号性:

ISIS配置以及详解

作者简介:大家好,我是Asshebaby,热爱网工,有网络方面不懂的可以加我一起探讨 :1125069544 个人主页:Asshebaby博客 当前专栏: 网络HCIP内容 特色专栏: 常见的项目配置 本文内容&am…

【C进阶】C程序是怎么运作的呢?-- 程序环境和预处理(上)

前言: 由于c语言的程序编译链接的这块知识点不清楚,回来复习一遍,以便于好理解c知识,我会尽快更新下一篇文章。 目录 1.程序的翻译环境和执行环境 2.翻译环境(编译链接) 编译(编译器&#xf…

C语言分支结构程序之if语句(1)

目录 if语句其一 奇数的判定 if语句其二 对奇数偶数的判断 if语句的结构图 专题 语法结构 结构图的阅读方法 结构图示例 相等运算符 关系运算符 嵌套的if语句 if语句其一 大家的一天都会怎么度过呢?我想应该不会是被设计好的程序那样循规蹈矩,我们…

webpack学习-1.起步

webpack学习-1.起步 1.基础设置2.配置文件的引入3.总结 1.基础设置 首先 webpack是干嘛的呢,用官网的一张图 Webpack 是一个现代的静态模块打包工具。它主要用于将前端应用程序中的各种资源(例如 JavaScript、CSS、图片等)打包成一个或多个…

【杂】解决关于mean(0)理解错误引发的程序bug

一、环境和解释器要一起配置好 invalid syntax 发生你在终端激活了一个环境,但 VSCode 依然使用之前的解释器的情况。 解释器设置影响了 VSCode 中运行 Python 脚本、调试、代码补全等功能的行为。VSCode 会根据你选择的解释器来执行这些操作。 二、关于mean&#x…

菜鸟学习日记(python)——运算符

我们进行运算时,需要两类数据,操作数和运算符,例如:ab就是一个运算,它的操作数是a和b,运算符是‘’ 在python中运算符包括以下几大类: 算数运算符比较(关系)运算符赋值…

JFrog----软件成分分析(SCA)简介

文章目录 1. SCA的重要性2. SCA的工作方式3. 安全漏洞分析4. 许可证合规性5. 代码质量和维护性结语 在当今的快速发展的软件行业中,软件成分分析(Software Composition Analysis,简称SCA)已成为一个不可或缺的工具。SCA的主要任务…

Remix介绍

编写和交互智能合约的集成开发IDE Remix - Ethereum IDE 使用Solidity插件 开始编写Solidity代码 任何一个智能合约中,都需要先声明Solidity的版本,定义一个license,一般使用MIT协议,有些编译器不写license会报错 // SPDX-Licen…

[oeasy]python0002_终端_CLI_GUI_编程环境_游戏_真实_元宇宙

回忆 上次 了解了 python 语言的特点 历史悠久功能强大深受好评已成趋势 3大主流操作系统 macwindowslinux 我们 选择 linux 作为基础系统 为什么选择 黑乎乎的命令行界面呢?🤔 GUI vs CLI 个人电脑 用图标和菜单组成 图形界面(GUI) Graphic User I…