Python3超入門【第5回】

Pocket

はじめに

こんにちは!筆者の鹿丸です。前々回・前回ではPython3の文字列・タプル・辞書について学習しました。今回は条件分岐を学びます。尚、次回のPython3超入門【第6回】ではより応用的なif文の使い方を解説しております。

Python3における条件分岐その1

まずはif文(いふぶん)を学びましょう。

文法は以下の通りです。

if (条件式):
    条件がTrue(真)のときに実行される処理

Python3のif文では、条件がTrueまたがFalse(偽)のときに実行される処理は、必ず、インデント(TAB)を入れないとエラーになります。正しい書き方と間違った書き方を比較してみるのでイメージを掴んで下さいね。

尚、インデントとはキーボードの左の方にあるTabキーを押して入力する空白のことです。

正しい書き方。⇒インデント(TAB)が入っているので正常に動作します。

間違った書き方。

正しい書き方では、printの前にインデント(TAB)が入っていますね。「間違った書き方」のように、こうした空白を入れないと、エラーになってしまいます。

尚、>=というのは比較演算子といって、このプログラムの場合では、1と10を比較しています。>=は日本語の「以上」を表す比較演算子です。

10は1以上ならば、print文を実行し、そうでなければ何もしないという意味のプログラムです。

ちなみに、条件式を満たすことをTrue、条件式を満たさないことをFalseといいます。

是非、正しい方のプログラムをIDLEに入力して実行してみて下さいね。

さて、Python3の比較演算子は>=(以上)以外にもたくさんあります。下記に比較演算子の一覧を示します。暗記しなくても構わないので、なんとなく把握して下さればと思います。

比較演算子 意味
== a == b aとbは等しい
!= a != b aとbは等しくない
> a > b aはbより大きい
< a < b aはbより小さい
>= a >= b aはbと等しいかもしくは、aはbより大きい(「以上」と同じ意味)
<= a <= b aはbと等しいかもしくは、aはbより小さい(「以下」と同じ意味)

これらの比較演算子を駆使して条件式を書きます。

Python3における条件分岐その2

今度は、条件がTrueのときだけではなくFalseのときも、何かしらの処理を実行するプログラムを書いてみます。

文法は次の通りです。

if(条件式):
    条件式がTrueのときの処理
else :
    条件式がFalseのときの処理

elseはエルスと読みます。もし条件式を満たさなければ、「条件式がTrueのときの処理」をスキップして、elseの次の行にある、「条件式がFalseのときの処理」を実行します。

また逆に、条件式を満たして、「条件式がTrueのときの処理」が実行されれば、else以下の処理は実行されません。

サンプルコードを通じてイメージを膨らませましょう。

このサンプルコードは、「500円のお金を持って買い物にきたところ、みかんの価格600円だったので買えなかった」というものです。

実行結果は、「お金が足りなくてみかんが買えませんでした。」になります。

なぜなら、budgetは500、orange_priceは600で、比較演算子>=は、budgetとorange_priceが同じか、もしくは、budgetの方が大きいという意味なので、条件を満たしませんね。条件式の結果はFalseです。

従って、else:以下の処理だけが実行されます。

Python3の条件分岐その3

今度は、もう少し複雑なif文の条件分岐にチャレンジしてみましょう。

文法は以下の通りです。

if(条件式1):
    条件式1がTrueの場合の処理
elif(条件式2):
    条件式2がTrueの場合の処理
else:
    全ての条件式がFalseの場合の処理

条件式1がTrueならば、「条件式1がTrueの場合の処理」だけを実行し、その他の処理は実行されません。

条件式1がFalseならば、条件式2がTrueかFalseかを評価します。そして、それがTrueならば「条件式2がTrueの場合の処理」だけを実行し、それ以外の処理は無視されます。

そしてもし、条件式1も条件式2も、ともにFalseであれば、else:以下の「全ての条件式がFalseの場合の処理」だけが実行されます。

抽象的に説明しても、少しわかりにくいかもしれませんね。サンプルコードで確認してみましょう。

テストの点数によって、異なるメッセージが表示されるプログラムです。

100点ではないので、最初の条件式ではFalseになりますね。次のelifのところの条件式は60点以上であればTrueなので、この条件式は満たしていますね。従って、実行結果は、「合格点です。」と画面に表示される形になります。

尚、この場合、else:以下は無視されます。

おわりに

Python3超入門【第5回】にして、ようやくif文を解説することができました。まだまだ解説し足りないPython3におけるif文の使い方もありますので、次回も引き続きif文の解説をしたいと思います。

 

[PR]『入門 Python 3』

【広告】当サイトと併用することで学習効果倍増間違いなし!→Pythonスタートブック

この記事を読んでいる人はこんな記事も合わせて読んでいます♪

  • Python3入門|初心者対象!【第2回】if文(制御構文①)Python3入門|初心者対象!【第2回】if文(制御構文①) はじめに こんにちは!筆者の鹿丸です。この記事はプログラミング未経験者の方を対象に、Python3の基礎の基礎~応用までを無理なく身に付けていただくための連載記事です。 今回は当連載記事(Python3入門|初心者対象!シリーズ)の第2回目にあたります。 前回の記事(第1回)は「Python3入門|初心者対象!【第1回】環境構築とはじめてのプログラミング」です。 […] Posted in 未分類
  • 【数学が苦手な方向け】社会人のための高校数学再入門おすすめ勉強法&書籍紹介【数学が苦手な方向け】社会人のための高校数学再入門おすすめ勉強法&書籍紹介 はじめに 高校数学でつまづいてしまった苦い経験はあるのだけれども、社会人になった今こそ、教養として、あるいは、実務のために高校数学に再入門したい方は案外多いのではないでしょうか。 かく言う筆者もその一人です。私の場合は数学ほど美しくパワフルな分野を中学レベルまでしかろくにできないまま、人生を過ごすのはまっぴらごめんだ!と感じています。そして雑学はあまり意味がな […] Posted in 未分類
  • Python3超入門【第8回】「while文によるループ処理」Python3超入門【第8回】「while文によるループ処理」 python3におけるwhile文の文法 while(条件式):         繰り返したい処理 文法はとってもシンプルですね。ではサンプルプログラムを通じてwhile文の使い方を習得していきましょう! while文の最も基本的なサンプルプログラム cnt = 0 while(cnt < […] Posted in 未分類
  • Python3超入門【第2回】文字列Python3超入門【第2回】文字列 まえがき python3超入門の2回目です。今回もわかりやくPython3を解説することに全身全霊を尽くします。早速、文字列の続きからやっていきましょう。前回のPython3超入門【第1回】もよろしくお願いします。 文字列への型変換 str()関数を使えば、例えば整数型や浮動小数点型など他の型を文字列型に変換できます。 […] Posted in 未分類
  • Python3超入門【第3回】Python3超入門【第3回】 さてPython3超入門シリーズも、【第3回】になりました。今回もわかりやすく説明するので、よろしくお願いします。 <関連リンク> Python3超入門【第1回】 Python3超入門【第2回】 今回は、リストというデータの入れ物について学びます。   [広告]確かな力が身につくPython「超」入門 […] Posted in 未分類
カテゴリー: 未分類 パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA