使用openpyxl库可以在Python中对Excel文件进行读写操作。可以使用该库中的方法,从Excel文件中获取B列中的数据,然后找到它在A列中的行数。
上述例子解法:
import openpyxl
# 打开Excel文件
workbook = openpyxl.load_workbook('example.xlsx')
# 选择工作表
sheet = workbook['Sheet1']
# 遍历B列,查找对应值在A列中的行数
for row in sheet.iter_rows(min_row=2, min_col=2, max_col=2):
search_value = row[0].value
found_rows = []
for a_row in sheet.iter_rows(min_row=2, max_row=sheet.max_row, min_col=1, max_col=1):
if a_row[0].value == search_value:
found_rows.append(a_row[0].row)
if found_rows:
print(f"值为 '{search_value}' 在 A 列中的行数为:{found_rows}")
在上面的示例代码中,使用load_workbook()方法打开名为"example.xlsx"的Excel文件,使用['Sheet1']选择工作表"Sheet1"。然后使用iter_rows()方法遍历B列中的数据,在A列中查找对应值的行数,将其存储在一个列表中。如果查找到了至少一行,就输出查找结果。
需要注意的是,在B列中遍历数据时,使用了min_row参数指定从第2行开始遍历,因为假设数据从第1行开始,因此第1行的数据是表头。在A列中遍历数据时,使用了max_row参数指定遍历到最后一行,因为查找的值可能出现在任何行。如果A列的数据很大,可能会导致查找时间较长,因此可以考虑使用一些优化方法来加快查找速度。