写一段python代码: 检查excel中是否存在某一行的B列=“AP”且D列=“3Q”,如果存在则打印这个行号,如果不存在则打印“没有!”
时间: 2023-11-16 18:05:06 浏览: 58
假设要检查的excel文件名为“test.xlsx”,以下是示例代码:
```python
import openpyxl
# 打开excel文件
workbook = openpyxl.load_workbook('test.xlsx')
# 选择第一个工作表
worksheet = workbook.active
# 遍历所有行
for row in worksheet.iter_rows():
# 如果B列为“AP”且D列为“3Q”
if row[1].value == "AP" and row[3].value == "3Q":
# 打印行号
print(f"行号为{row[0].row}")
break # 如果找到了符合条件的行,就退出循环
else:
# 如果没有找到符合条件的行,打印“没有!”
print("没有!")
```
解释一下代码:
- `openpyxl` 是一个 python 库,用于操作 Excel 文档。
- 首先打开 Excel 文件,选择第一个工作表。
- 使用 `iter_rows()` 方法遍历所有行,得到一个生成器对象。
- 对于每一行,判断 B 列和 D 列的值是否分别为“AP”和“3Q”。
- 如果找到了符合条件的行,打印这个行号并退出循环。
- 如果遍历完所有行都没有找到符合条件的行,打印“没有!”。
注意事项:
- 代码中假设 B 列和 D 列分别是第 2 列和第 4 列,因为 openpyxl 的行和列都是从 1 开始计数的,所以实际上是第 1 列和第 3 列。
- 如果要检查的 Excel 文件不在当前工作目录,需要加上文件路径。例如:`openpyxl.load_workbook('/path/to/test.xlsx')`。
阅读全文