↓↓クリックして頂けると励みになります。
Pythonのif文は、条件に応じて特定のコードブロックを実行するための制御構造です。
条件式が真の場合に、if文の後に続くブロックが実行されます。
必要に応じて、if文にelif(else ifの略)やelse節を追加することで、複数の条件をチェックすることができます。
if文の条件式は、任意の真偽値を返す式です。
比較演算子(>
, <
, >=
, <=
, ==
, !=
など)や論理演算子(and
, or
, not
)などを使用して、複雑な条件を作成することができます。
また、if文の中に別のif文をネストすることも可能です。
Visual Studio Codeでターミナルを開いて次の条件判定するプログラムを作ってみましょう。
新規作成 【iftest1.py】
# iftest1.py print( '1st message' ) print( '2nd message' ) if 10 > 100 : print( 'select true' ) else: print( 'select false' ) print( 'last message')
では、プログラムの内容をみていきましょう。
このプログラムは、if 文という構文を使っています。
if 条件 : 処理1 else : 処理2
もし、ifのあとの条件に当てはまれば、その後の「処理1」が実行されます。
もし条件に当てはまらなければ「処理1」は行われずに「else:」へ進み「処理2」が行われます。
このことをふまえて、プログラムを見ていきます。
if 10 > 100 : print( 'select true' ) else: print( 'select false' )
条件(10>100
)は明らかにfalse(偽)ですから、「select true」という文字列は表示されずにelse:
後の処理に移り、「select false」という文字列が表示されます。
では出力結果を見てみます。
~/Desktop/Programming/Python_work $ python iftest1.py 1st message 2nd message select false last message
もう一つ、条件判定するプログラムを見てみましょう。
新規作成 【iftest2.py】
# iftest2.py import random x = random.uniform(0.1,0.9) print(x) if x > 0.8 : print( '今日のあなたはとても幸運です!' ) elif x > 0.5 : print( '今日のあなたはちょっと幸運です。' ) elif x > 0.2 : print( '今日のあなたはちょっと不運です。' ) else : print( '今日のあなたはかなり不運です!')
このプログラムでもif文を使っていますが、前のプログラムでは出てこなかったimport random
というのが新しく出てきています。
random関数はPythonのパッケージの中に含まれるものでrandom.random()
のような使い方をすると1から100までの数のうち1つの整数が生成されます。
random.randint(開始数,終了数)
のような使い方をすると開始数から終了数の間のどれか1つのint値(整数値)を生成します。
random.uniform(開始数,終了数)
のような使い方をすると開始数から終了数の間のどれか1つのfloat値(浮動小数点値)を生成します。
今回は「0.1以上0.9以下の値」をランダムに得たいのでrandom.uniform(0.1,0.9)
という書き方をしました。
random関数を使うには、プログラムの初めにimport文でimport random
と指定する必要があります。
それでは、今回出てきた構文を見ていきましょう。
if 条件1 : elif 条件2 : ・・・ else :
このプログラムでは最初if 条件:
から読み込まれます。
その後elif 条件 :
が読まれます。
elif
は何個でも記述することができます。
条件に当てはまるものが何もなければ、最後にelse:
が実行されます。
何回か実行して結果を確認してみましょう。
~/Desktop/Programming/Python_work $ python iftest2.py 0.7915520175089757 今日のあなたはちょっと幸運です。 ~/Desktop/Programming/Python_work $ python iftest2.py 0.5367979202884474 今日のあなたはちょっと幸運です。 ~/Desktop/Programming/Python_work $ python iftest2.py 0.4220317039920334 今日のあなたはちょっと不運です。
↓↓クリックして頂けると励みになります。