Python:if・elseと真偽値条件分岐を学習

Python学習 カテゴリ
前回次回

 

 今回からは「なんだか本格的にプログラミングをやってるんだなあ」という感じがしてくるようなことをやっていきます。なんだか徐々にワクワクしてきますね、プログラミングを勉強して作りたいものがある人も、まだ作りたいもののイメージが全然ない人も、今回のif文は今後かなり重要です。とはいえ、まだまだ基礎なので頑張って覚えて下さい。

 前回までの「my-first.py」はそろそろ文の数が多くなってきたと思いますので、今回は新しく「if-else.py」というファイルを作りましょう。

スポンサーリンク

前回のおさらい

 前回のおさらいです。前回は組み込み関数についてを軽く知り、int/float/str関数の使い方を勉強しました。前回の内容を覚えているでしょうか。軽くまとめていきます。

int関数

文字型を数値型に変えるための関数、int関数では整数値を扱う。

float関数

文字型を数値型に変えるための関数、float関数では小数点を含む数値を扱う。

str関数

数値型を文字型に変えるための関数。

 これらの他にもまだまだたくさんの関数があります。今後まとめていく予定です。現時点の学習進行度ではまだ必要ないので、まずは記事の流れに沿って学習を進めていきましょう。

ここまでのことを忘れてしまっていたら、前の記事に戻って学習をしておきましょう。

比較演算子

 本題に入る前に比較演算子というものを覚える必要があります。日常生活や算数でも馴染みのあるものですので、記号を覚えるだけでOKだと思います。

演算子意味
==右辺と左辺が等しい
!=右辺と左辺が等しくない
<右辺が大きい
>左辺が大きい
<=右辺が大きい 又は 等しい
>=左辺が大きい 又は 等しい

今回の半分のタスクはこの比較演算子を覚えるところにあります。
注意点としては「等しい」はイコール(=)ではなく、イコールイコール(==)であるという点です。

スポンサーリンク

if文とは

それでは今回のメインである「if文」について知っていきましょう。

 if文は「もし〜ならば」という英語のように、「もし〜ならば」という条件を付けて、その条件が満たされたときにのみ、if以下の文が実行されます。

例えば、以下の文。

これはtestが100(点)のときに、「おもちゃを買ってあげる」というような文です。仮に、test = 90に変更して実行を押してみると何も表示されないのがわかります。

 if/while/def/class といった文には最後にコロンをつけることがルールとなっています。これは可読性(読みやすさ)を高めるためのものと定義されています。忘れたらエラーが返ってくるので、忘れないようにつけましょう。

 また、if文の後の内容を書く際は、Tabキーを押してインデントを合わせなければなりません。空ける間隔は、正確には半角スペースが4つ分のスペースを空ける必要があります。

ちょっと面倒ですが、ルールなので頑張って覚えましょう。

else文とは

 if文について理解できたらつぎは「else」についてです。elseは「その他の」という意味です。つまり、ifの処理を行う条件を満たせなかった場合の文をelseで定義することができます。

さきほどの「if文とは」で扱った例文を一部変えて説明しましょう。

先程実行した方がいれば、この文では実行結果が表示されないというのはおわかりだと思います。

そういった場合に「else」の出番となります。

とすれば、テストが100点ではなかった人への処理が実行されます。

実際、「test」はinput関数で数値を入力し、変数として扱うとより現実的なコードになりますので、input関数を使って書き直してみます。

 これを実行してみると「ターミナル上」で入力が可能になったことがわかると思います。

ここで「Code Runner上」で問題が発生している方がいらっしゃるのではないかなと思います。

コードを実行し、数値を入力しようとした際に「読み取り専用のエディターでは編集できません」と表示された場合は以下の記事通りに作業し、解決に取り組んで下さい。(数分で終わります)

関連記事

 今回はおそらくVSCodeユーザーが必ず一度はぶつかるであろう問題「読み取り専用のエディターでは編集できません」というエラーについてを解決していこうと思います。 今回のこのエラーが出てきたということは皆さんVSCodeの拡張機能である、[…]

ほほえみIT保育園
スポンサーリンク

elifとは

 それでは次に、第二のifであるelifを学んでいきます。ifが第一の条件とした時、elifが第二の条件、elseがその他の条件となります。

以下のコードは3つの条件をつけ、それぞれの条件ごとに違った応答をするというコードです。

if(第一条件)が100点のとき、おもちゃを買ってあげるというご褒美。
elif(第二条件)が90点以上99点以下のとき、お菓子を買ってあげるという少しグレードを下げたご褒美。
89点以下のときは激励を与えるというように、点数毎に条件を分岐しています。

このようにelifは第一条件とそれ以外の間に他の条件を付けたい時に使います。

さて、今回はそこそこ覚えることが多いので、このへんにしておきましょう。
次回はもう少しif文について掘り下げていきます。

スポンサーリンク