本文共 756 字,大约阅读时间需要 2 分钟。
python 三元条件判断的3种实现方法 C语言中有三元条件表达式,如 a>b?a:b,Python中没有三目运算符(?:),但Python有它自己的方式来实现类似的功能。这里介绍3种方法: 1》true_part if condition else false_part a,b=2,3 c=a if a>b else b >>> print c 3 a,b=2,1 c=a if a>b else b >>> print c 2 2》利用and-or条件判断的特性来实现三元条件判断 首先介绍一下,and和or的用法: python 中的and从左到右计算表达式,若所有值均为真,则返回最后一个值,若存在假,返回第一个假值。 无论是列表,元组还是字符串,空表示False,非空表示True >>> 'python' and [] and (2,3) [] >>> 'python' and [2,3] and (3,4)(3, 4)
or 也是从左到右计算表达式,则返回第一个为真的值,若均为假,则返回最后一个值。 >>> 'python' or [3,4] or () 'python' >>> '' or [] or ()()
然后,我们利用and-or条件判断的特性来实现三元条件判断: a,b=2,1 c = (a>b and [a] or [b])[0] >>> print c 2 3》使用列表 a,b=2,7 c = [b,a][a>b] >>> print c 7 分析:若a>b为真,由于真用1表示,因此相当于c=[b,a][1],即c=a 若a>b为假,由于假用0表示,因此相当于c=[b,a][0],即c=b >>> int(False) 0 >>> int(True) 1 (完)转载地址:http://qdyai.baihongyu.com/