首页 > 解决方案 > 在python中查找两个数字内的值的数量

问题描述

几周前才开始编码,但我一直无法看出哪里出错了。

目标是编写一个函数,该函数将数字列表作为参数并返回数字 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() 错误

标签: pythonlistnumbers

解决方案


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

if x > 24.54 and x < 47.54:

应该成为

if i > 24.54 and x < 47.54:

因为i是在您迭代时采用列表中每个项目的值的变量。

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


推荐阅读