在这种情况下我做错了什么?

2024-06-30 15:02:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一件事codecademy.comPython课程,我找不到这段代码有什么问题:

def greater_less_equal_5(answer):
    if answer >= 5:
         return 1
    elif answer <= 5:
         return -1
    else:
         return 0

print greater_less_equal_5(4)
print greater_less_equal_5(5)
print greater_less_equal_5(6)

它返回:

-1
1
1

我的代码怎么了?你知道吗


Tags: 代码answerreturnifdefequalelse课程
2条回答

代码中有逻辑错误。使用参数5调用greater_less_equal_5函数时,将输入第一个if语句,因为它满足answer>=5的条件。因此,每次调用greater_less_equal_5函数时,使用参数5将得到返回值1。你知道吗

为了得到正确的结果,只需查看twoif条件中所需的内容,以便在answer=5时获得返回值0。你知道吗

正如@Bhargav Rao所说,您需要从代码中删除=符号。你知道吗

原因是它首先检查answer是否大于或等于5,然后返回1。5大于或等于5,所以它返回1。你知道吗

相关问题 更多 >