【发布时间】:2012-05-16 09:00:54
【问题描述】:
我有一个元素列表(整数),我需要做的是快速检查该列表中有多少元素落在指定范围内。示例如下。
范围是从 34 到 566
l = [9,20,413,425]
结果是 2。
我当然可以为此目的使用一个简单的 for 循环,并将每个元素与最小值和最大值 (34
【问题讨论】:
我有一个元素列表(整数),我需要做的是快速检查该列表中有多少元素落在指定范围内。示例如下。
范围是从 34 到 566
l = [9,20,413,425]
结果是 2。
我当然可以为此目的使用一个简单的 for 循环,并将每个元素与最小值和最大值 (34
【问题讨论】:
>>> l = [9,20,413,425]
>>> sum(34 < x < 566 for x in l)
2
【讨论】:
len([x for x in l if x > 34 and x < 566])
【讨论】:
我不确定这是否很好,但它是一行 ;-)
len(set([9,20,413,425]).intersection(range(34,566)))
【讨论】: