使用python获取Excel中行中带有"用例"的对应的第I列的值
时间: 2024-05-15 18:14:26 浏览: 13
首先需要安装openpyxl库,可以使用以下命令安装:
```python
pip install openpyxl
```
然后,可以使用下面的代码实现你的需求:
```python
import openpyxl
# 打开Excel文件
workbook = openpyxl.load_workbook('your_file.xlsx')
# 选择工作表
sheet = workbook.active
# 遍历每一行,找到包含"用例"的行
for row in sheet.iter_rows(values_only=True):
if "用例" in row:
# 找到包含"用例"的行后,获取对应的第I列(这里假设是第4列)
value = row[3]
print(value)
```
其中,`values_only=True`是为了遍历每一行时,只获取单元格的值而不获取格式等其他信息。如果需要获取其他信息,可以将其设置为`False`。另外,上面代码中假设要获取的是第4列,即索引为3的列,如果需要获取其他列,只需要调整索引即可。
相关问题
openpyxl在python中获取行中有用例对应的H列的内容
可以使用openpyxl库中的`load_workbook`函数加载Excel文件,然后使用`active`属性获取当前活动的worksheet,接着可以使用`iter_rows`方法逐行遍历worksheet,获取每行的内容并判断是否是有用的用例,如果是则可以使用`cell`属性获取H列的内容。以下是示例代码:
```python
from openpyxl import load_workbook
# 加载Excel文件
workbook = load_workbook(filename='example.xlsx')
# 获取当前活动的worksheet
worksheet = workbook.active
# 遍历每一行
for row in worksheet.iter_rows(min_row=2, values_only=True):
# 判断是否是有用的用例
if row[1] == 'test' and row[2] == 'positive':
# 获取H列的内容
h_value = worksheet.cell(row=row[0], column=8).value
print(h_value)
```
在上面的代码中,假设Excel文件中第一行为标题,从第二行开始是数据。代码中使用`iter_rows`方法遍历worksheet,参数`min_row=2`指定从第二行开始遍历,参数`values_only=True`指定只获取单元格的值而不是整个单元格对象。在判断当前行是否是有用的用例时,假设第一列是用例编号,第二列是用例类型(test或train),第三列是用例情感(positive或negative)。最后使用`cell`属性获取H列的内容,参数`row=row[0]`指定行号,`column=8`指定列号,因为H列是第8列。
python将Xmind用例转为Excel用例,区分p1用例
如果你想要在转换过程中,区分出每个用例的优先级(例如 P1、P2 等),你可以在 Xmind 文件中为每个用例设置一个特定的图标或者标签,然后在代码中读取该图标或者标签的信息,并将其添加到 Excel 文件中。
以下是一个示例代码,假设我们将 P1 用例用红色星号标记:
```python
import xmindparser
import pandas as pd
# 读取 Xmind 文件
xmind_file = 'test.xmind'
workbook = xmindparser.load(xmind_file)
# 获取用例
sheet_list = []
for sheet in workbook[0]['topic']['topics']:
case_list = []
for case in sheet['topics']:
# 获取用例属性
case_dict = {}
case_dict['模块'] = sheet['title']
case_dict['用例名称'] = case['title']
case_dict['前置条件'] = case['note']
case_dict['步骤'] = [step['title'] for step in case['topics'][0]['topics']]
case_dict['预期结果'] = [step['title'] for step in case['topics'][1]['topics']]
# 判断用例优先级
if 'priority' in case and case['priority'] == '1':
case_dict['优先级'] = 'P1'
else:
case_dict['优先级'] = 'P2'
case_list.append(case_dict)
# 将用例添加到 sheet
sheet_df = pd.DataFrame(case_list)
sheet_df = sheet_df[['模块', '用例名称', '前置条件', '步骤', '预期结果', '优先级']] # 调整列顺序
sheet_list.append((sheet['title'], sheet_df))
# 将每个 sheet 转为 Excel 文件
writer = pd.ExcelWriter('test.xlsx')
for sheet_name, sheet_df in sheet_list:
sheet_df.to_excel(writer, sheet_name=sheet_name, index=False)
writer.save()
```
该代码在读取用例时,判断每个用例是否有 `priority` 属性,并且该属性值是否为 `1`,如果是,则将该用例的优先级设置为 `P1`,否则设置为 `P2`。然后将优先级信息添加到 Excel 文件中。
需要注意的是,在 Xmind 中设置图标或者标签的方法可能因版本不同而有所不同。你需要先查看 Xmind 的使用文档,了解如何设置图标或者标签。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)