任务要求
输入两个数,比较他们之间的大小关系,并在控制台打印输出。
任务分析
1.基础方法:使用条件语句直接比较。
2.内置函数:利用max()或min()快速获取极值。
3.三元运算符:简化条件判断代码。
4.Lambda函数:封装比较逻辑提高复用性。
5.异常处理:应对非数字输入场景。
任务实现
方法1:基础条件判断
# 输入两个数字并比较
num1 = int(input("输入第一个数字:"))
num2 = int(input("输入第二个数字:"))
if num1 > num2:
print(f"{num1} 大于 {num2}")
elif num1 < num2:
print(f"{num1} 小于 {num2}")
else:
print("两数相等")
运行结果:
从键盘上输入字符串“10”和“20”。
输入第一个数字:10
输入第二个数字:20
10 小于 20
进程已结束,退出代码为 0
说明:
- - 通过if-elif-else结构实现逻辑分支。
- - 直接使用比较运算符(>、<、==)判断大小关系。
方法2:使用max()函数
num1 = float(input("输入第一个数字:"))
num2 = float(input("输入第二个数字:"))
result = max(num1, num2)
print(f"较大的数是:{result}" if num1 != num2 else "两数相等")
运行结果:
从键盘上输入字符串“10”和“20”。
输入第一个数字:10
输入第二个数字:20
较大的数是:20.0
进程已结束,退出代码为 0
说明:
- - max()函数直接返回两数中的最大值。
- - 支持浮点数比较,通过float()转换增强输入兼容性。
方法3:三元运算符简化
num1 = float(input("输入第一个数字:"))
num2 = float(input("输入第二个数字:"))
output = f"{num1} ≥ {num2}" if num1 >= num2 else f"{num1} < {num2}"
print(output)
运行结果:
从键盘上输入字符串“10”和“20”。
输入第一个数字:10
输入第二个数字:20
10.0 < 20.0
进程已结束,退出代码为 0
- 说明:单行代码实现条件判断,适合简单场景。
方法4:Lambda函数封装
num1 = float(input("输入第一个数字:"))
num2 = float(input("输入第二个数字:"))
compare = lambda x, y: x if x > y else y if x != y else "相等"
print(compare(num1, num2))
运行结果:
从键盘上输入字符串“10”和“20”。
输入第一个数字:10
输入第二个数字:20
20.0
进程已结束,退出代码为 0
说明:
- - 使用Lambda表达式定义匿名函数,便于重复调用。
- - 支持返回极值或相等提示,逻辑更紧凑。
方法5:异常处理增强安全性
try:
# 输入两个数字并比较
num1 = int(input("输入第一个数字:"))
num2 = int(input("输入第二个数字:"))
if num1 > num2:
print(f"{num1} 大于 {num2}")
elif num1 < num2:
print(f"{num1} 小于 {num2}")
else:
print("两数相等")
except ValueError:
print("输入错误:请输入数字!")
运行结果:
从键盘上输入字符串“10”和“20”。
输入第一个数字:10
输入第二个数字:20
10 小于 20
进程已结束,退出代码为 0
说明:try-except捕获非数字输入,避免程序崩溃。