在具有负值和正值混合的列表中小于0的最高值

时间:2015-09-05 21:41:26

标签: python list

我有一个包含这些值的列表。

lst1 = [1,-2,-4,-8,-9,-12,0,39,12,-3,-7]

我需要获得小于零的最大值。

如果我print max(last) - 我得到39,所需要的是-2。

print max(p < 0 for p in lst1),我得到了真,而不是-2

2 个答案:

答案 0 :(得分:12)

没关系,我想通了,它应该是

print max(p for p in lst1 if p < 0)

答案 1 :(得分:3)

首先过滤列表:

max(filter(lambda x:x<0,ls))