我们知道C语句中存在问号表达式,例如下面:
1
|
<span style=
"font-size:18px;"
>a=2>1? 10: -10;</span>
|
那么,Python脚本语言中是否也存在类似的问号表达式呢?答案是肯定的。而且存在两种方式。
方式1:使用if else实现
如下例:
1
|
<span style
=
"font-size:18px;"
>b
=
5
<br><br>a
=
2
if
b
=
=
4
else
1
<br><br>
print
a<br><
/
span>
|
方式2:使用逻辑运算符实现
如下例:
1
|
<span style
=
"font-size:18px;"
>b
=
5
<br><br>a
=
b
=
=
4
and
2
or
1
<
/
span>
|
要注意:使用逻辑运算时要保证and后面的变量值不能为非,否则会出错。
提示
python中的and和or和其它语言的区别很大。其它语言中的and和or都是返回bool类型的结果,python不是。它返回的是做and和or运算的其中一个值。那个值决定了这个表达式的值,就返回那个值。请看下面的例子:
>> 5 and ''
这里结果是'', 空字符串, 因为是它导致了这个表达式为false.
也就是所在and中,只有前面一个值是false的时候,才有可能成为结果。否则就是后面的值为结果。
了解了and和or运行的过程,那么就可以实现上面的?表达式了。
本文转自朱先忠老师51CTO博客,原文链接: http://blog.51cto.com/zhuxianzhong/1613851,如需转载请自行联系原作者