码迷,mamicode.com
首页 > 编程语言 > 详细

python中的问号表达式

时间:2015-02-12 02:02:43      阅读:986      评论:0      收藏:0      [点我收藏+]

标签:python 问号表达式

    我们知道C语句中存在问号表达式,例如下面:

 

a=2>1? 10: -10;

 

    那么,Python脚本语言中是否也存在类似的问号表达式呢?答案是肯定的。而且存在两种方式。

 

    方式1使用if else实现

如下例:

 

b = 5

a = 2 if b == 4 else 1

print a

 

    方式2:使用逻辑运算符实现

如下例:

 

b = 5

a = b == 4 and 2 or 1

   要注意:使用逻辑运算时要保证and后面的变量值不能为非,否则会出错。

  

    提示

    python中的and和or和其它语言的区别很大。其它语言中的and和or都是返回bool类型的结果,python不是。它返回的是做and和or运算的其中一个值。那个值决定了这个表达式的值,就返回那个值。请看下面的例子:

 

 

  >> 5 and ‘‘

  这里结果是‘‘, 空字符串, 因为是它导致了这个表达式为false.
  也就是所在and中,只有前面一个值是false的时候,才有可能成为结果。否则就是后面的值为结果。

  了解了and和or运行的过程,那么就可以实现上面的?表达式了。

 

 

本文出自 “青峰” 博客,请务必保留此出处http://zhuxianzhong.blog.51cto.com/157061/1613851

python中的问号表达式

标签:python 问号表达式

原文地址:http://zhuxianzhong.blog.51cto.com/157061/1613851

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!