if else 各种写法
网上有各种写代码的秀操作,如何让一行代码实现多种功能,因此我找到了python的装逼之路(被打 皮~)
- if else 正常用法:
a = input("input a number")
b = input("input a number")
c = 0
if a > b:
c = a
else:
c = b
- 开始有点不正常了
c = a if a > b else b
将为真的结果放在if 前面 ,else后为不为真的结果
3. 连if - else 也没有了
c = [b, a][a > b]
这个前面建立了一个列表[b, a] 后面利用a > b判断来建立0 ,1索引,得到前面的值,有点秀!
4. 最强,利用逻辑判断,有我们计算机逻辑的风范
c = (a > b and [a] or [b])[0]
如果 a> b true 返回 [a] (true) ,[a] or [b] 返回[a] (这里有一个问题,我做了个实验,当a = 0时,实际上[a] python 认定是true ,这就是为什么不能去掉a 和b 左右两边的方框的原因)
这里利用了and和or的用法,我们看下面
and和or的用法
python里的运算符基本是从右向左的,且非0 为真,0 为假
# and
print(1 and 2)
# 输出 2 前真返后
print(0 and 2)
# 输出 0 前假返前
# or
print(1 or 2)
# 只有前真才会返回前 其余情况全部返回后