函数在此特定代码中不起作用 - 解释错误的 "if" 语句 - Python

Function not working in this specific code - interprets wrong "if" statement - Python

我刚写的

Python函数一直循环到一百。 在解释器(或者说 运行)上,我输入了“5”,但它执行了错误的 "if" 语句。

def range_v2(c):
    int(c)
    if c == 5:
        for x in range(1, 50, +5):
            print(x)
    else:
        for x in range(0, 100, +5):
            print(x)

y = input()
int(y)
range_v2(y)

您正在重新定义函数中的 "c" 变量。您的函数接受一个名为 "c" 的参数,然后在函数的第一行中将 "c" 的值设置为 0,因此无论您将什么参数传递给函数,它总是会被评估0. 删除 "c=0" 行,它应该按您预期的方式工作。

int(c) 不会就地转换 cint 如果那是你认为的那样。你必须做

c = int(c)