前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python的三元操作 博客分类: Python Python

Python的三元操作 博客分类: Python Python

作者头像
chroya
发布2018-10-31 17:33:44
6580
发布2018-10-31 17:33:44
举报
文章被收录于专栏:封碎封碎

    我写程序很喜欢用三元运算符,但是在python中居然不支持,有点郁闷,查了下资料,发现还是有解决方案的。

    比如,一个这样的函数:

代码语言:javascript
复制
function trans(v) {
		return (v==0)?1:v;
	}

啧啧,三元运算符看着就是漂亮,不知道python为什么不支持。

   下面看一下python的解决方案一:

代码语言:javascript
复制
def trans(v):
		return 1 if v==0 else v

也就是if else语句的简写形式,意思一看就明白,看起来还不错。   

   下面是解决方案二:

代码语言:javascript
复制
def trans(v):
		return v==0 and 1 or v

用到了与或运算符的特性。

    解释一下:如果v等于0为true,则跟1做与运算,为true,则不进行后面的或运算,直接返回1;如果v等于0为false,则跟1做与运算,为false,继续进行或运算,返回v。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2010-08-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档