python 求excel中每一行第18、19、20、21、22、23列的最大值并求这些列中最大值的个数
时间: 2023-07-04 11:14:52 浏览: 81
求取序列中第K个最大值的python代码
好的,针对您的问题,我可以给您提供以下 Python 代码实现:
```python
import openpyxl
# 打开 Excel 文件并选择指定的工作表
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb['Sheet1']
# 指定列的索引和最大值变量初始化
col_indexes = [18, 19, 20, 21, 22, 23]
max_value = None
# 循环遍历每一行并获取指定列的最大值
for row in sheet.iter_rows(min_row=2, values_only=True):
row_values = [row[i-1] for i in col_indexes]
row_max = max(row_values)
if max_value is None or row_max > max_value:
max_value = row_max
# 计算指定列中最大值的个数
max_count = 0
for row in sheet.iter_rows(min_row=2, values_only=True):
row_values = [row[i-1] for i in col_indexes]
row_max = max(row_values)
if row_max == max_value:
max_count += 1
# 输出结果
print(f'第 {col_indexes} 列的最大值为:{max_value}')
print(f'第 {col_indexes} 列中最大值的个数为:{max_count}')
```
其中,`example.xlsx` 是您要处理的 Excel 文件名,`Sheet1` 是您要处理的工作表名。您需要将代码中的 `col_indexes` 变量设置为您要获取最大值的列的索引列表(从 1 开始计数)。代码中的 `min_row=2` 参数表示从第二行开始,因为第一行通常是表头。
阅读全文