三元操作符

        通常N元操作符指的是该操作符有N个操作数,如赋值操作符(=),它是一个二元操作符,所以它有两个操作数(左右各一个);又如减号(-)是一个二元操作符,但是当它作为负号(-)使用的时候,便是一个一元操作符,它表示负数,所以只有一个操作数。那么,三元操作符理应有三个操作数咯?没错的,你猜对了。
        其实Python的作者一向推崇简洁编程理念,所以很长一段时间Python都没有三元操作这个概念(因为他觉得三元操作符将会使程序的结构变复杂),但是长久以来Python社区的小伙伴们对三元操作符表现出了极大的渴望,所以最终作者还是勉为其难地为Python加入了三元操作符。有了它,我们就可以使用一条语句来完成以下的条件判断和赋值操作:

if x<y:
    small=x
else:
    small=y

那么这段代码用三元操作符表示应该是怎样的呢?

三元操作符语法:

表达式1 if 条件表达式 else 表达式2

当表达式返回True时,返回结果表达式1,否则返回结果表达式2。

所以,上面的代码可以改进为:

smal=x if x<y else y

刚开始看可能会不大习惯,毕竟跟我们通常的逻辑思维方式不同,但也不觉得会导致程序结构变得复杂啊。
那么,大家看下面代码:

#coding=utf-8
score = int(input('请输入一个分数:'))
if 100 >= score >= 90:
    level = 'A'
elif 90 > score >= 80:
    level = 'B'
elif 80 > score >= 60:
    level = 'C'
elif 60 > score >= 0:
    level = 'D'
else:
    print('输入错误!')
print(level)

如果用三元操作符的形式,修改后的代码应该是这样的:

# coding=utf-8
score = int(input('请输入一个分数:'))
level = 'A' if 100 >= score >= 90 else 'B' if 90 > score >= 80 else'C'if 80 > score >= 60 else 'D' if 60 > score >= 0 else print('输入错误!')
print(level)

现在还会觉得简单易懂吗?
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

W_chuanqi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值