首页 > 编程语言 > 详细

python之三目运算符的替代品?

时间:2020-02-21 15:01:12      阅读:55      评论:0      收藏:0      [点我收藏+]
# 不知曾几何时,你是否也觉得Python的三目运算写起来很麻烦呢?(没有过)
# 比如:
a, b = 3, 4
c = a if a > b else b
d = a if a < b else b
print(c, d)
# 就是简单的找两个数里边大的那个和小的那个,max,min就行了,不过这里为了演示,就别计较那么多了。
# 很!麻!烦!对不对!(没有啊,我觉得挺简便的啊)
# 那么现在就让我们来看看它的替代写法!(喂!我说了不麻烦啊!算了你说吧。)
a, b = 3, 4
# 前面还是一样。(你在凑字数吧,我说!)
# 闭嘴,你不也是!
c = [b, a][a > b]
d = [b, a][a < b]
print(c, d)
# 嘿嘿,看懂了吗?是不是很神奇?(所以你?)
# 所以我?(所以你作弊了!这怎么可能是对的??)
# 。。。才没有,我给你讲一下吧!(洗耳恭听)
# 首先,用a和b组成一个只有2项的列表,因为python的列表里什么都可以装,所以可以等价替换到其他非数字的情况。
# 然后后面的[]里就不是列表了,而是python的切片,或者你理解成c或java里的数组索引也行。
# 我们都知道,bool类型转int的话,False对应0,True对应1.所以这里如果a>b,结果就是1,就会得到a,反之得到b。

python之三目运算符的替代品?

原文:https://www.cnblogs.com/zhangA/p/12340956.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!