Python 中的三目运算符
Python 中的条件表达式(三目运算符)如何书写?与其他语言的三目运算符有什么区别?
回答
编译有声
Python 的条件表达式语法:value_if_true if condition else value_if_false
# 基础用法
age = 20
status = 'Adult' if age >= 18 else 'Minor'
# 嵌套(不推荐)
result = 'A' if score >= 90 else 'B' if score >= 80 else 'C'
# 相当于
def get_grade(score):
if score >= 90:
return 'A'
elif score >= 80:
return 'B'
else:
return 'C'
与其他语言(如 C 的 a ? b : c)的区别:
- 可读性更好(条件在中间)
- 不支持赋值表达式形式的
a ? b : c语法 - 优先级:条件表达式优先级较低,复杂表达式需加括号