ほとんどのプログラミング言語には、三項演算とも呼ばれる三項演算があります。Python 言語は Python2 から進化しました。 . バージョン5からは三項演算子も導入されました。
Python では三項演算を条件式とも言い、構文は次のようになります:
true_expression if 条件 else false_expression
condition は判定条件、true_expression と false_expression はif…else… で接続された 2 つの式。
条件が true (結果が true) の場合、true_expression を実行し、true_expression の結果を式全体の結果として使用します。
条件が true でない (結果が false) 場合は、false_expression を実行し、false_expression の結果を式全体の結果として使用します。
Python の三項演算子は、疑問符とコロンを使用して接続する Java や他の言語とは異なり、if と else で接続されます。
例:
num1 = int(input('请输入第一个数字:')) num2 = int(input('请输入第二个数字:')) # 三元运算 max_num = num1 if num1 >= num2 else num2 print(f'最大值是:{max_num}')
出力:
请输入第一个数字:15646 请输入第二个数字:464665 最大值是:464665
上記の例では、num1 が num2 以上の場合、max_num は num1 と等しく、それ以外の場合、max_num は三項演算により num2 に等しい 演算子は 2 つの数値の最大値を見つけます。
1.三項演算文
numa = 100 numb = 10 max_num = numa if numa >= numb else numb print(f'最大值是:{max_num}')
2.条件文
numa = 100 numb = 10 if numa >= numb: max_num = numa else: max_num = numb print(f'最大值是:{max_num}')
上記の比較より、三項演算ステートメントと条件ステートメントの機能はまったく同じですが、三項演算ステートメントには 1 行のコードしか必要ありませんが、条件ステートメントには 4 行のコードが必要です。三項演算文はコードが少なくて読みやすいため、ほとんどの場合、三項演算文は条件文の省略形であると言えます。
num = int(input('请输入数字:')) print('负数') if str(num)[0] == '-' else print('大于等于100') if num >= 100 else print('小于100的正数')
上記のコード行はネストされた三項演算式で、最初の else の後のステートメントは完全な三項演算です。演算ステートメントは全体として次のように扱われます。次の図に示すように、外側の三項演算式の false_expression。
この式は、次の条件判定コードと同等です:
num = int(input('请输入数字:')) if str(num)[0] == '-': print('负数') else: if num >= 100: print('大于等于100') else: print('小于100的正数')
同じ方法を使用してさらに多くのレイヤーをネストすることもできますが、個人的にはあまりにも多くのネストを記述しないことをお勧めします。そうしないと、コードの可読性が向上するどころか低下し、逆効果になります。
s = [i if i % 2 == 0 else 10*i for i in range(10)] print(s)
出力:
[0, 10, 2, 30, 4, 50, 6, 70, 8, 90]
もちろん、三項演算式と辞書導出式やセット導出などを組み合わせることもできます。 Python のリストの内包表記については、こちらを参照してください。
Python の三項演算式には、主に 2 つの利点があります:
1.単純な条件ステートメントを 1 行の三項算術式に置き換えて、コードの行数を減らすことができます。
2. 単純な三項演算式を使用すると、コードの可読性が向上し、コードがより Python 的で洗練されたものになります。
以上がPython で三項演算子を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。