python 可通過 if 語句來實現三目運算的功能,因此可以近似地把這種 if 語句當成三目運算子。作為三目運算子的 if 語句的語法格式如下:
(true_statements) if (expression) else (false_statements)
三目運算的規則是:先對邏輯表示式 expression 求值,如果邏輯表示式返回 true,則執行並返回 true_statements 的值;如果邏輯表示式返回 false,則執行並返回 false_statements 的值。
舉個栗子:
>>> isinput = true if input('input: ') else false
input: 996icu
>>> isinput
true
>>> isinput = true if input('input: ') else false
input:
>>> isinput
false
三目運算簡化寫法:
變數 = 值1 or 值2
類似於變數 = 值1 if 值1 else 值2
再來個栗子:
>>> content = input('input: ') or 'nothing'
input: 996icu
>>> content
'996icu'
>>> content = input('input: ') or 'nothing'
input:
>>> content
'nothing'
應用在print函式:
a = 996
b = 666
str_ = '996' if a < b else '666'
print(str_)
print('996' if true else 'icu')
print('996') if false else print('icu')
666
996icu
python允許在三目運算子的 true_statements 或 false_statements 中放置多條語句。
python 主要支援以下兩種放置方式:
1.多條語句以英文逗號隔開:每條語句都會執行,程式返回多條語句的返回值組成的元組。
>>> str_ = print('996'), 'true' if 5 > 0 else 'false', 'icu'
996>>> str_
(none, 'true', 'icu')
2.多條語句以英文分號隔開:每條語句都會執行,程式只返回第一條語句的返回值。
>>> str_ = 'icu'; st = 'true' if 5 > 10 else print('icu')
icu>>> str_
'icu'
>>> print(st)
none
巢狀三目運算
print('aaa') if true else (print('bbb') if false else print('ccc'))
print('aaa') if false else (print('bbb') if false else print('ccc'))
aaa
ccc
Python 三目運算
python 可通過 if 語句來實現三目運算的功能,因此可以近似地把這種 if 語句當成三目運算子。作為三目運算子的 if 語句的語法格式如下 true statements if expression else false statements 三目運算的規則是 先對邏輯表示式 expressi...
Python 三目運算
python 可通過 if 語句來實現三目運算的功能,因此可以近似地把這種 if 語句當成三目運算子。作為三目運算子的 if 語句的語法格式如下 true statements if expression else false statements 三目運算的規則是 先對邏輯表示式 expressi...
python 三目運算
首先確定三目運算的使用條件,if只有兩個才能用三目 只有 if else 先寫個if else的小例子 if push lpush self.conn.lpush self.key,list elif push rpush self.conn.lpush self.key,list 那麼運用三目運算...