在Python中比较三个数的大小,主要有以下四种方法,涵盖逻辑清晰、简洁高效及扩展性强的实现方式:
一、使用 if
语句逐个比较
通过嵌套 if-else
语句,先比较前两个数,再与第三个数对比,逻辑直观且易于理解。
a = int(input("请输入第一个数: "))
b = int(input("请输入第二个数: "))
c = int(input("请输入第三个数: "))
if a >= b and a >= c:
max_num = a
elif b >= a and b >= c:
max_num = b
else:
max_num = c
if a <= b and a <= c:
min_num = a
elif b <= a and b <= c:
min_num = b
else:
min_num = c
print("最大值为:", max_num)
print("最小值为:", min_num)
二、使用内置 max()
和 min()
函数
Python提供 max()
和 min()
函数,可快速获取列表中的最大值和最小值,代码简洁高效。
numbers = [a, b, c]
max_num = max(numbers)
min_num = min(numbers)
print("最大值为:", max_num)
print("最小值为:", min_num)
三、将数存入列表并排序
通过 sort()
方法对列表进行排序,适用于需要处理多个数的场景,扩展性强。
numbers = [a, b, c]
numbers.sort(reverse=True)
print("最大值为:", numbers)
print("最小值为:", numbers)
四、使用 lambda
函数与 reduce
操作
适用于需要函数式编程风格的场景,但代码可读性较低,不推荐初学者使用。
from functools import reduce
max_num = reduce(lambda x, y: x if x > y else y, [a, b, c])
min_num = reduce(lambda x, y: x if x < y else y, [a, b, c])
print("最大值为:", max_num)
print("最小值为:", min_num)
总结 :优先使用 max()
和 min()
函数(方法二),代码简洁且效率最高;若需扩展至更多数,推荐使用列表排序(方法三)。if
语句(方法一)适合教学和基础练习。