首页 > 解决方案 > 尝试使用 xlrd 查找行的最小值时如何排除零作为最小值

问题描述

我有一个现有的 excel 电子表格,我想在其中找到每一行的最小值。我能够做到这一点,但是,我想忽略任何零作为最小值。

因此,如果第 1 行的值为 [12 6 8 0 19 4],我希望程序声明最小值为 4。

我使用以下代码使用 xlrd 确定连续的最小值,但它不会忽略零。

Minimum = min(sheet1.row_values(1, start_colx=1, end_colx=6))
print(Minimum)

标签: python-3.7minxlrd

解决方案


您可以使用列表推导来排除列表的 0:

[value for value in list if value!=0]

并在结果上使用最小函数:

list=sheet1.row_values(1, start_colx=1, end_colx=6)
Minimum = min([value for value in list if value!=0])
print(Minimum)

推荐阅读