python中的条件表达式
age1 = 20
age2 = 15
# if判断
if age1 > 18:
print('成年人')
else:
print('未成年')
# 条件表达式的第1种写法
# <expression 1> if <condition> else <expression 2>
"成年人" if age1 > 18 else "未成年人"
# 条件表达式的第2种写法
# <expression> and <on_true> or <on_false>
age1 > 18 and "已成年" or "未成年"
# 条件表达式的第3种写法
# ("false", "true")[condition]
msg1 = ("未成年", "成年人")[age1 > 18]
print(msg1)
# 条件表达式的第4种写法
# (lambda: <on_false>, lambda:<on_true>)[<condition>]()
msg2 = (lambda: "未成年", lambda: "成年人")[age1 > 18]()
print(msg2)
# 条件表达式的第5种写法
# {True: <on_true>, False: <on_false>}[<condition>]
msg3 = {True: "成年人", False: "未成年"}[age1 > 18]
print(msg3)
# 条件表达式的第6种写法
# ((<condition>) and (<on_true>,) or (<on_false>,))[0]
msg4 = ((age1 > 18) and ("成年人",) or ("未成年",))[0]
print(msg4)