python三目运算符

文章发布于 2023-05-15

三目运算符是什么

if...else的简写。

三目运算符的语法格式

exp1 if contion else exp2

语法讲解:

  • contion 是条件表达式
  • exp1 条件表达式成立的值
  • exp2 条件表达式不成立的值

使用三目表达式的优点

我们通过if...else和三目表达式来进行比较:

a = 100;
if a>90:
  bool = '成绩优秀'
else
  bool = '还需要努力'

看下面使用三目运算符来实现上面的方法

a = 100;
bool = '成绩优秀' if a>90 else '还需要努力'

三目运算符的嵌套

使用三目运算符可以实现嵌套,使用括号()把嵌套的三目运算表达式括在一起

bool = '成绩优秀' if a > 90 else ('未来可期' if a >60 else '还需要努力')

三目运算符和其他语言的三元表达式有什么区别

三目运算符 exp1 if contion else exp2

三元表达式 contion ? exp1 : exp2

两则在写法上完全不相同,功能基本都是一样的。

实例

1 使用三目运算符判断两个数字大小

a = 10
b = 15
max = 'a' if a>b else 'b'
print(max) # 'b' 答案是b,因为10 < 15

2 对成绩分数评级。

封装一个函数,评级的算法为满分100分 ,超过90分为S ,6089之间为A+ ,059之间为B

fen = 86
def fn(fen):
    return 's' if fen>=90 else ('A+' if fen >=60 else 'B') 
    
fn(fen) # A+