如何计算列表中的整数范围

Ksh*_*htj 1 python list probability count range

我试图找到列表中数字的概率。我有一个列表说:

a =[62.0, 0.0, 67.0, 69.0, 0.0, 76.0, 0.0, 0.0, 69.0, 70.0, 73.0, 0.0, 0.0, 56.0, 80.0, 0.0, 59.0, 65.0, 78.0, 0.0, 43.0, 0.0, 87.0]
Run Code Online (Sandbox Code Playgroud)

我想找出数字从0-25,25-50,50-100和超过100的概率。我尝试使用这个:

a.count(range(25))/len(a)
a.count(range(25,50))/len(a)
Run Code Online (Sandbox Code Playgroud)

但我没有得到所需的结果。有人可以帮忙解决这里出了什么问题吗?

Sam*_*ord 5

a.count(range(25))给出 0 因为range(25)不是 的元素a。您想要计算的是range(25)inside中每个单独元素的出现次数a,例如:

>>> sum(a.count(i) for i in range(25))
9
Run Code Online (Sandbox Code Playgroud)

或者,您可以迭代 的每个元素a并检查它是否包含在范围中(我认为这会更快一些,因为理论上您不需要迭代范围来测试其中是否有某些内容):

>>> sum(i in range(25) for i in a)
9
Run Code Online (Sandbox Code Playgroud)