这里是清安,不知道你是否在写代码的时候会用到很多的if else的判断呢。如果是,不妨看完这一篇文章,看看是否对你有一定的帮助。先来看看三元表达式的写法:
为真时的结果 if 返回布尔值的判断条件 else 为假时的结果
那么怎么写呢,看看:
a = 1 if True else 0 print(a)
这里的意思是,如果为真,则输入1,否则输入0。那么具体是怎么样的呢?看看下面的例子:
x = input("请输入一个数:") y = input("请再次输入一个数:") if x > y: print(x) else: print(y)
这里的意思就是当输入X,Y时,进行判断,如果X大于Y则输出X的值,否则输出Y的值。那么这样是不是看起来很长?用三元表达式就能帮你解决掉:
x = input("请输入一个数:") y = input("请再次输入一个数:") result = x if x > y else y print(result)
就是这么的简洁,实用。那么还有其他的一些用法吗?有的,我们结合函数来看看:
def number(a, b): # 如果a>b, re1=a, 否则, re1=b re1 = a if a > b else b # 如果条件成立, re2=True对应的值a, 反之, re2 =False对应的值 re2 = {True: a, False: b}[a > b] # (不成立的值, 成立的值)[条件] re3 = (b, a)[a > b] return re1, re2, re3 print(number(10, 20))
三元表达式还是比较的神奇且实用的。最后了解一下斐波那契数列:
def fb(n): return n if n<2 else fb(n-1)+fb(n-2) print([fb(n) for n in range(10)])
经过上面的学习,这里大家应该都能看懂了吧,都是类似的写法。用法上可能有点不太一样而已,此处直接把函数调用以及传值写入了,并使用print直接打印出来。它还有很多的用处,如:结合匿名函数,列表推导等。具体的可以自行百度去学习学习。多做了解可以写出更好的代码。