【发布时间】:2018-11-05 22:19:34
【问题描述】:
我有一个浮点值列表,例如 [-2.4, -1.3, -3.8, -1.9, 5.0, 0.6, 2.9, 1.9, 4.7, 3.5, 6.9, 1.5, -4.2, 3.7, 2.1, 6.6 , 7.0, -4.6, -4.9]。
我需要并尝试做的是计算最长的连续值 >0。
尝试通过 for 循环执行此操作,但它只给出一个总数,并通过 itertools.groupby,但我仍然只得到值。
for i, x in groupby(mintemps):
if float(i >= 0):
print(len(list(x)))
任何帮助将不胜感激。
【问题讨论】:
-
print([i for i in lst if i > 0])? -
嘿。欢迎来到 SO。你能添加你想要得到的输出吗?
-
它只打印列表中大于 0 的值。此列表中可能有奇数 0,而不是它们的总数。如果您查看上面的列表,正确的答案是 8,而这个单线产生 12。