第6回 python入門 今回はif文の使い方について説明したいと思います。
今回もpythonを使ってAnacondaのspyderで説明致します。
まずプログラムというのは上から下に向かって走ります、プログム制御をしていると、途中で処理を分岐させたい場合があります。if文はその時に使用するものです。
例えば a = 10 という変数を記載します。
a = 10
ここで、printで画面に出したいと思います、この時に例えば a はプラスと記載してみます。
print(”a is Plus”)
今 a は10 で正の整数ですので問題ありませんよね。これで実行しますと
当然 a is Plusと表示されます。
ここで、先ほど宣言した、a の値プラス 10 をマイナス 10 に変更します。
a = -10
ただ、このまま実行してしまうと、printで「 a is Plus 」と書いてありますので、当然 a is Plus と表示されてしまいます。
ここのままですと a の値によってメッセージを変えることができません。では、a の値によってメッセージを変えるにはどうすればよいかと言いますと、答えはif文を使用することです。
実際に書いてみましょう♪( ´θ`)ノ
ifと書きまして、条件文を記載します。その後に条件を満たした場合に実行してほしい処理を記載します。
例えば、今回ですとこのように記載してみますと
if 条件:
条件を満たしている場合に処理したい内容
if a >=0 :
print("a is Plus")
print("END")
今回は a 大なりイコール ゼロ のような条件を書いてみます。
if文ではこの条件式を満たす場合、インデントされた処理を実行します、しかし、条件を満たさない場合はこのインデントされた処理を飛ばした後から実行されます。試しにこれで実行してみますと。
メッセージはENDのみしか表示されませんでした。
最初に a には、マイナス 10 が代入されています。そのあとに if 文が実行されますが、ここのif文の条件をみてみますと。 a はゼロ以上となっています。ですが実際には先ほども言いましたが a にはマイナス10 が入っているため、if文の条件を満しません、そのためインデントされた処理print(” a is Plus”)が実行されずプログラムはif文のインデントされた処理を飛ばした後から実行されています。ですので、表示は最後のprint(”END”)のEND表示のみとなっていました。
ここで、試しにa の値をプラス10と変更して実行してみます。
a = 10
そうすると、「 a is Plus」 と表示されました。はい、このようにしてプログラム自体にif文で条件をつけることによって処理を分岐させることができます。ここで新たにelse文を紹介致します。else文は特殊なものでして、if文の直下につくものです。else文を使用したい場合は必ずif文のインデントの終わりの後に記載してください。
実際に書いてみますと、
if a >=0 :
print("a is Plus")
else :
print("a is Minus")
print("END")
else文では if 文の条件が満たされなっかた場合のみ、プログラムは else文 のインデントの処理を実行致します。しかし、if文の条件が満たされていた場合はif文内のインデントの処理が実行されますのでelse文内のインデントの処理は実行されず、else文のインデントの処理を飛ばした後から実行されます。
試しにこれで実行してみます。
はい、「 a is Plus」と「END」のみが表示されています。
簡単に説明しますと、最初に a にはプラス10が代入されています。その後に、if文が実行されますが、if文の条件式をみてみます。条件式では a はゼロ以上となっていますので条件が成立しています。ですので、if文内のprint(”a is Plus”)が実行されました。その後のelse文は、if文の条件が満たされている時、実行されないというルールですので、else文内の処理は飛ばされ、最後のprint(”END”)が実行されました。ですので、表示されたのは「 a is Plus」と「END」のみが表示されています。
試しに、宣言の a に値をまたマイナス 10と変更し実行してみます。
a = -10
そうすると、「 a is minus」と「END」のみが表示されています。
簡単に説明しますと、最初に a にはマイナス10が代入されています。その後if文が実行されますが、if文の条件をみてみます。条件式では a はゼロ以上となっています。今 a にはマイナス10が入っていますので条件が不成立です。ですので、if文内は実行されず、else文内のprint(” a is minus”)が実行されます。その後に、最後のprint(”END”)が実行されます。ですので、表示されたのは、「 a is minus」と「END」のみが表示されています。
また頭の良い方はご気づきでしょうが、else文を使用せずif文だけで同じ処理ができます。どのようにするかと言いますと、簡単で
if a>=0 :
print("a is Plus")
if a<0:
print("a is Minus")
print("END")
このように書いても同じ結果が表示されます。ですが、実務ではelse文をよく使用しますのでelse文を是非覚えてください。
はい、今回は if 文についてということで変数aをもちいてif 文の仕組みを勉強し、実際にif 文を用いて分岐処理を行って見ました。次回の講座ではwhile文についての内容となっています。ストーブの仕組みを用いた説明となっており製品の仕組みを理解できます。是非ご覧ください。
以上でpython入門を終了と致します。ご静聴ありがとうございました。(๑╹ω╹๑ )
コメント