一、前言
三元表达式(三目运算符)能够简洁我们的代码,代替很多if else
在Java、C、JavaScript等语言中,他们的格式为:
返回布尔值的判断条件?为真时的结果:为假时的结果
但是,Python的三元表达式的写法有别于其他语言,Python的语法为
为真时的结果 if 返回布尔值的判断条件 else 为假时的结果
二、练习题
题目一
下面的代码会让用户依次输入x
,y
两个数值,如果y
大于x
则z
等于True
,否则z
等于False
,请将其转换为三元表达式(三目运算符):
x=input("请输入x的值:") y=input("请输入y的值:") if y>x: z=True else: z=False print(z)
先试着自己解答一下,参考答案在后面加油!相信自己!你可以的!!!
参考答案
z = True if y > x else False
附加解答
z=bool(y>x)
题目二(进阶)
斐波那契数列指的是这样一个数列:0,1,1,2,3,5,8
,它从第3项开始,每一项都等于前两项之和。现在请使用三元表达式和递归来实现斐波那契数列:
先试着自己解答一下,参考答案在后面加油!相信自己!你可以的!!!
参考答案
def fibonacci(num): return num if num < 2 else fibonacci(num - 1) + fibonacci(num - 2) print(fibonacci(int(input('请输入列数:'))))