ホームページ > バックエンド開発 > Python チュートリアル > Python で三項演算子を使用するにはどうすればよいですか?

Python で三項演算子を使用するにはどうすればよいですか?

PHPz
リリース: 2023-05-08 15:28:16
転載
1495 人が閲覧しました

Python の三項演算の詳しい説明

三項演算子とは

ほとんどのプログラミング言語には、三項演算とも呼ばれる三項演算があります。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。

Python で三項演算子を使用するにはどうすればよいですか?

この式は、次の条件判定コードと同等です:

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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート