在Python中找到两个数字内的值数量

时间:2018-11-22 20:38:58

标签: python list numbers

几周前才开始编写代码,但是我一直在查看出错的地方有麻烦。

目标是编写一个将数字列表作为参数并返回数字24.54和47.54内的值的数量的函数。

def count_in_range(x):
    sum = 0
    for i in x:
        if x > 24.54 and x < 47.54:
            sum = sum + 1
            return sum

当前遇到“无法排序的类型:list()> float()错误

1 个答案:

答案 0 :(得分:1)

当您检查列表中每个项目的值时,您会无意中检查了整个列表的值。

if x > 24.54 and x < 47.54:

应该成为

if i > 24.54 and x < 47.54:

因为i是一个变量,它在您遍历时采用列表中每个项目的值。

此外,您想将return语句移到循环外部,否则循环将在1次迭代后终止。