比较三个数字?

2024-09-27 22:21:06 发布

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

我在编程类的介绍中,不知为什么,对于如何从这里开始,我有些困惑。基本上,提示是比较用户输入的三个数字,看看第一个数字是否在最后两个数字之间。

def fun1(a,b,read,):
    if a < read and read > b:
        return print("Yes")
    elif b < read and read > a:
        return print("Yes")
    else:
        return print("No")

def main():
   read = input("mid: ")
   a = input("num1 ") 
   b = input("num2 ")
   fun1(read,a,b,)
   print("result:",fun1)

所以正如你所见,我不知道如何在第一个函数中得到比较函数。非常感谢您的帮助!


Tags: and函数用户readinputreturnifdef
1条回答
网友
1楼 · 发布于 2024-09-27 22:21:06

Python允许您chain comparison operators

if a < b < c:

这将测试b是否介于ac独占之间。如果您想要包容,请尝试:

if a <= b <= c:

所以,在你的代码中,应该是这样的:

if a < read < b:
    return print("Yes")
elif b < read < a:
    return print("Yes")
else:
    return print("No")

或者,更简洁地说:

if (a < read < b) or (b < read < a):
    return print("Yes")
else:
    return print("No")

还要注意,print在Python中总是返回None。所以,return print("Yes")等同于return None。也许您应该删除返回语句:

if (a < read < b) or (b < read < a):
    print("Yes")
else:
    print("No")

相关问题 更多 >

    热门问题