使用Python读取Excel,实现传入表头值时,输出对应列所有行的值, 如:班级 姓名 性别 三年级二班 小红 女 三年级五班 小明 男 ,输入班级,姓名,输入结果为:[[三年级二班,小红],[三年级五班,小明]],这里的班级 姓名 性别是表头,三年级二班 小红 女 是表格数据,需要通过表头获取表头下所有值,且需要指定读取的sheet页
时间: 2024-03-28 17:41:47 浏览: 73
如何在Python对Excel进行读取
好的,您可以使用 `openpyxl` 库来读取 Excel 文件,并根据所需的表头值来获取对应列的数据。
以下是一个示例代码,其中 `file_path` 是 Excel 文件的路径, `sheet_name` 是您需要读取的 sheet 页的名称, `header` 是您需要匹配的表头值(可以是单个值或多个值的列表):
```python
import openpyxl
def read_excel(file_path, sheet_name, header):
wb = openpyxl.load_workbook(file_path)
sheet = wb[sheet_name]
data = []
header_row = [cell.value for cell in sheet[1]]
header_indices = [header_row.index(h) for h in header]
for row in sheet.iter_rows(min_row=2):
values = [row[i].value for i in header_indices]
if None not in values:
data.append(values)
return data
```
您可以调用该函数,并传入相应的参数来实现所需的功能。例如:
```python
file_path = 'example.xlsx'
sheet_name = 'Sheet1'
header = ['班级', '姓名']
result = read_excel(file_path, sheet_name, header)
print(result)
```
上述代码将输出类似于 `[[三年级二班, 小红], [三年级五班, 小明]]` 的结果。
阅读全文