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)
但我没有得到所需的结果。有人可以帮忙解决这里出了什么问题吗?
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)