小学生でも分かる!Pythonプログラミング - if ~ : / elif ~ : / else :
← preview
next →
make you're choice.
世の中、なかなか思い通りにいかないものです。
「こうなったらどうしよう...」と、
「もしも」のことを考えてしまって
思い切った事ができない事がある。
どうして決断や行動ができないのか。
それは、1度に出来る選択が
1つだけだからです。
失敗できないと思うから動けないのです。
もし、1度の機会に対して
複数の行動を用意することができるのなら、
失敗した後の行動も用意することができるのなら、
リスクに対する恐れや不安を
大幅に軽減出来るのではないでしょうか。
僕は、そんな様々な「もしも」を考えられる人が
プログラミングに適していると思います。
if... / elif... / else...
>> conditional_branch = 条件分岐
〔 conditional_branch ( コンディショナル_ブランチ ) 〕
プログラムを書く時には、
様々な可能性を想定しなければなりません。
もしもこれがこうなった場合 → Aプランを実行
もしもこれがああなった場合 → Bプランを実行
それ以外の場合 → Cプランを実行
このようにする事を「場合分け」あるいは
「条件分岐」と言います。
>> if 条件式 :
〔 if ( イフ ) 〕
「 もし、〜なら 」という文を条件文と言います。
Pythonでは、条件文を
「 if 条件式 : 」という形式で記述します。
Pythonの構文ルールとして、
条件式の後には必ず「 : (コロン) 」を
付けるのを忘れないで下さい。
また、条件文の後に処理内容を書かないと
エラーになるので何かを書きましょう。
何も決まっていない時は「 pass 」と書きましょう。
「 pass 」は、「何もしない」という命令文です。
if 条件式:
処理内容
...
...
...
「処理内容」が「if 条件式:」よりも
右にズレていますね。
後で詳しくまとめますが
これを「インデント(段落)」と言います。
「 : (コロン) 」を書いてEnterで改行すれば :
大抵自動でインデントしてくれます。
インデントしてくれない場合は :
TABキー( →| ) か
spaceキー を押してやりましょう。
>> else :
〔 else ( エルス ) 〕
「 if 条件式 : 」の条件以外の場合には、
「 else : 」を使います。
「 else : 」とは、
それ以外の全ての場合を表すので、
処理の内容を書いても
条件式を書くことはありません。
例えば、
もし今日が誕生日だった場合はケーキを食べる
それ以外の場合はケーキを食べない
という条件分岐があったとします。
僕は今日誕生日じゃないので
「それ以外の場合(else:)」に該当します。
よって、僕は今日ケーキを食べません。
>> elif 条件式 :
〔 elif ( エルイフ ) 〕
「 もし、〜なら 」という条件が複数ある時は、
「 elif : 」を使います。
これは、「 else if 」の略です。
「 それ以外の場合 」がある時に使います。
追加ルールみたいなものですね。
例えば先ほど
もし今日が誕生日だった場合はケーキを食べる
それ以外の場合はケーキを食べない
という条件分岐がありましたが、
そこへさらに
もし今日から±3日以内に誕生日がある場合は
ケーキを食べるかどうか選択するもし今日がクリスマスの場合はケーキを食べる
もし今日家族が誕生日だった場合はケーキを食べる
もし5日以内に2回以上
ケーキを食べた場合はケーキを食べない
など、条件を追加するときは
全て「 elif : 」を使います。
>> conditional_expression = 条件式
〔 conditional_expression
( コンディショナル_エクスプレッション ) 〕
「もし、3回パスワードを間違えたらロックをかける」
「もし、6:00になったらアラームを鳴らす」
「もし、18歳以下なら全年齢用のページを表示する」
「もし、在庫が0になったら"SOLD OUT"と表示する」
このような「○○が、〜なら」
という条件式をCPUに理解させるには
どうしたらいいでしょうか?
例えば、
「正しいパスワードが打ち込まれたら"成功"と表示する」
「パスワードを間違えたら"失敗"と表示する」
という命令に従うことを考えてみましょう。
どうやったら
「入力されたパスワード」が
「設定されたパスワード」かどうか分かりますか?
考えてみましょう。
前に登場したbool関数を覚えていますか?
bool( a == b ) のように書いてやると
「 aとbは等しい 」という条件を比較検証して
等しい場合
→「 条件文は True(真) ですよ 」
等しくない場合
→「 条件文は False(偽) ですよ 」
と、教えてくれる関数でした。
そのbool関数で登場した
「 == 」を「比較演算子」と言います。
実は、「 比較演算子 」さえ書けば
比較する事ができるんですよ。
ですから、条件式を書くときに
「 bool( ) 」を書く必要はありません。
設定パスワード = "abc123"
入力パスワード = str( input ( "パスワードを入力" ) )
if 入力パスワード == 設定パスワード:
print( "成功" )
else:
print( "失敗" )
このような形になれば良いですね。
if文などが書けるようになるために
次回は、Pythonで使われる
主な「演算子」を紹介していきたいと思います。
次の記事へ。