Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonには三項条件演算子はある?使い方をわかりやすく解説

Pythonにも、他の多くのプログラミング言語でいう「三項条件演算子」に相当する機能があります。Pythonでは「条件式(conditional expression)」と呼ばれ、Python 2.5から導入されました。

基本構文

Pythonの条件式は、次のような形式で記述します。

x if 条件式 else y

この式は、条件式が True の場合に x を返し、False の場合に y を返します。C言語などでよく見られる condition ? x : y という形式とは順序や書き方が異なるため、最初は少し戸惑うかもしれませんが、英語の文章のように自然に読めるのが特徴です。

使用例

以下の例では、点数(percent)が50以上なら「pass」、そうでなければ「fail」という文字列を返しています。

>>> percent = 59
>>> 'pass' if percent >= 50 else 'fail'
'pass'
>>> percent = 45
>>> 'pass' if percent >= 50 else 'fail'
'fail'

このように、if文を書くまでもない簡単な分岐処理を1行で簡潔に表現できるのが条件式の利点です。変数への代入と組み合わせれば、さらに実用的に使えます。

>>> percent = 59
>>> result = 'pass' if percent >= 50 else 'fail'
>>> print(result)
pass

注意点

  • この構文はPython 2.5以降でのみ使用できます。それ以前のバージョンでは利用できません。
  • 条件式の中に別の条件式を入れ子にすることも可能ですが、読みづらくなるため避けるのが一般的です。

単純な条件分岐をスマートに書きたいときに、ぜひ活用してみてください。

  1. Pythonの*演算子はリストに対してどのように機能するのか?

    Pythonの*(アスタリスク)演算子は、シーケンスやコレクションを「アンパック」して、位置引数として展開する働きを持っています。リストの各要素を関数の引数として順番に渡したい場合、要素をひとつずつインデックスで取り出す代わりに、*演算子を使えば簡潔に記述できます。使用例以下のコードでは、リスト values の要素を multiply 関数の引数として渡しています。def multiply(a, b): return a * b values = [1, 2] print(multiply(*values))*演算子によってリストがアンパックされるため、このコードは実際には次のように実

  2. Pythonの条件分岐をマスターする:if、else、elifの使い方徹底解説

    このチュートリアルでは、Pythonにおける if、else、elif 文の使い方を詳しく解説します。 プログラミングでは、条件の結果に応じて処理を分岐させたい場面が頻繁にあります。Pythonでは、if 文を使って条件を評価し、その結果によって実行するコードを制御します。 Pythonのif文とは Pythonにおける if 文の基本構文は以下のとおりです。if condition: statement ここで特に注意すべきポイントは、コロン(:)とインデント(字下げ)です。Pythonではインデントによってコードブロックを定義するため、インデントが正しくないとエラーになります。