python - 在 Python 中创建一个函数,该函数会被除以直到达到某个范围

标签 python if-statement

我正在尝试创建一个函数,该函数将接受输入并将其除以直到它在某个范围内。

假设输入是“2600”,我想尝试将其除以 500 到 1000 之间,然后返回该数字。所以它会这样做

尝试 2600/1,发现不在范围内,然后重试

然后 2600/2 并查看它不在范围内,然后重试

然后 2600/3 并查看它是否在范围内并返回 866

无论如何,我在 Python 2 中这样做,我认为我的想法是正确的,但语法让我困惑。

def octavesort(input,counter1):    
    if input > (frequency * 2):
        test = input / counter1

        if test > (frequency * 2):
            octavesort(input,counter1+1)

        else:
            return test
    else:
        return test

最佳答案

您忘记返回下一个测试的值。

return octavesort(input,counter1+1)

此外,您不需要这两个 else 子句;只需返回测试

关于python - 在 Python 中创建一个函数,该函数会被除以直到达到某个范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26199311/

相关文章:

c - 管道, fork ,程序如何在相同条件下运行 if 和 else

mysql - 带有 INSERT as then 子句的 if 语句 (MYSQL)

javascript - 在这个例子中如何使用$(this)?

python - 在 Python 中从列表中删除元素

python - 在 numpy 中附加 2x2 协方差矩阵

python - 命令与子进程

javascript - 我无法根据选择框选择添加不同的元素

r - 如何在 if 语句(使用来自其他向量的条目)之后通过多次计算在向量上使用 ifelse

python - 在 Pandas 中同时在所有列中使用 apply 函数

python - 当发送到 Pyramid/Cornice 应用程序时,Backbone.js HTTP PUT 请求失败并出现 404 错误