CodeWalk

Python 中的三目运算符

作者:编译有声 · 2026-05-30 12:55

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)的区别:

  1. 可读性更好(条件在中间)
  2. 不支持赋值表达式形式的 a ? b : c 语法
  3. 优先级:条件表达式优先级较低,复杂表达式需加括号