コース: ソフトウェア開発の基礎知識

Pythonで判定を行う

コース: ソフトウェア開発の基礎知識

Pythonで判定を行う

人間の場合に質問に対する答えが 「たぶん」ということがあります。 「たぶん」は「はい」とまでは言えませんが 「いいえ」とも言えません。 しかしコンピューターは違います。 その区別は明確です。 「はい」か「いいえ」、 「真」か「偽」、 「1」か「0」しかないのです。 「真」か「偽」のどちらかに分解される式は 条件式、またはブール式と呼ばれます。 例えば6という数字は 2x3 と同じですか? 正しいですね。 これは「真」と評価されます。 4は5より大きいですか? 違いますね。 ということは「偽」です。 最後に数字に関係ない例を挙げます。 私の名前はグレッグですか? 誤りですね。 アニースです。 これも「偽」と評価されます。 これがブール式です。 ブール式はコード中に判定を行う際に 役に立ちます。 どのようにでしょう。 コンピューターが条件に基づいて判定する 最も一般的な方法は if 文を使うことです。 if 文はこのような構造をしています。 まず if という単語で始まります。 そしてある条件を確認します。 そしてその条件が「真」であれば その中に配置された処理を 実行します。 フローチャートをイメージすると わかりやすいと思います。 もしそれが「真」なら プログラムはその文を実行に移し、 そうでなければこの文は 存在しなかったかのように 無視されます。 これは Python の簡単な if 文です。 if という単語で始まります。 そして5は6より小さいという ブール式があります。 小なり記号は 小学校で習ったのと同じものです。 次にコロンです。 これは Python の if 文の構文や 規則の一部です。 そして次の行は インデントされたコード行です。 この行には条件が「真」である場合に 実行される print 文が含まれています。 Python のインデントが重要なのは、 それによりコンピューターがどの文が if に属するかを認識するからです。 Python ではインデントされていない行に 来た時点で if は終了します。 それでは最初の if 文を 書いてみましょう。 まず having_fun という 変数を作りましょう。 この変数に 「はい」という値を代入します。 空行を追加します。 そして if 文を追加します。 まず if と入力し、 その後にスペース、括弧、 そしてブール式の中を入力します。 変数 having_fun の値を 文字列「はい」と比較したい。 そのためには Python の倒置演算子である = を二重で使用します。 まずは having_fun と入力し、 = を2回、 そして文字列の「はい」 そしてコロンです。 そして次の行をインデントして 式が「真」の時に 実行させたい処理を記述します。 つまり「喜んでくれて嬉しいです」 と表示するのです。 プログラムを実行してみましょう。 希望通りの出力が得られます。 それでは今度は変数の値を 「いいえ」に変えて実行すると どうなるか試してみてください。 if 文は実行中のプログラムの処理を 分岐させることができます。 様々な分岐を作成することで より面白いプログラムを 書くことができます。

目次