Python 制御文の記述方法
はじめに
ここでは、条件文やループ文などのPythonの制御文を整理します。
基本的な記述方法
基本的な記述方法は以下の通りです。
- キーワード + 条件式 + コロン(:)という構成の行で始まる
- 必要に応じて次の行に「節」と呼ばれるコードのブロックが続く
- コードのブロックは、コードの字下げ*1で指定する
- コードのブロックの中にはほかのブロックを含めることができる
- 字下げがなくなるか、上位ブロックの字下げに戻るとブロックは終了する
条件文
if文
if文の節は条件式がTrueの場合に実行されます。
if 条件式: 処理 # 条件式がTrueの場合に実行
elif文
if文やelif文に続けて記述します。
「else if」を意味し、それ以前の条件式がFalseだった場合に限り条件式を判定します。
if 条件式: 処理 # 条件式がTrueの場合に実行 elif 条件式: 処理 # 前の条件式がFalseかつ条件式がTrueの場合に実行
else文
if文やelif文に続けて記述します。
if文またはelif文の条件がFalseの場合にelse節が実行されます。
if 条件式: 処理 # 条件式がTrueの場合に実行 else: 処理 # 条件式がFalseの場合に実行
使用例
if文、else文、elif文の使用例は以下の通りです。
print('名前を入力してください') name = input() if name == 'taro': print('こんにちはtaroさん') elif name == 'hanako': print('こんにちはhanakoさん') else: print('名前が間違っています')
ループ文
while文
条件式がTrueの間、While節が繰り返し実行されます。
while 条件式: 処理 # 条件式がTrueの間繰り返し実行
forループ文
一定の回数だけコードのブロックを繰り返し実行します。
forループではrange()関数を用いることで、連続した値をループごとに取得します。現在の値は変数に格納されます。
for 変数名 in 引数を指定してrange()を呼び出し: 処理 # 一定回数繰り返し実行
range()関数の指定方法
range()関数に渡す引数の数に応じて、開始、終了、ステップ数が異なります。
引数を1つ指定した場合
内容 | 値 |
---|---|
開始 | 0 |
終了 | 第1引数の値-1 |
ステップ数 | 1 |
for i in range(5): print(str(i))
0 1 2 3 4
引数を2つ指定した場合
内容 | 値 |
---|---|
開始 | 第1引数 |
終了 | 第2引数の値-1 |
ステップ数 | 1 |
for i in range(12, 16): print(str(i))
12 13 14 15
引数を3つ指定した場合
内容 | 値 |
---|---|
開始 | 第1引数 |
終了 | 第2引数の値-1 |
ステップ数 | 第3引数 |
for i in range(1, 7, 2): print(str(i))
1 3 5 7
break文
プログラム実行がbreak文に到達すると、即座にwhileループ節またはforループ節を抜け出します。
while 条件式: if 条件式: break:
continue文
プログラム実行がcontinue文に到達すると、即座にwhileループ節またはforループ節の先頭に戻ります。
while 条件式: if 条件式: continue:
使用例
while文、break文、continue文の使用例は以下の通りです。
while True: print('名前を入力してください') name = input() if name != 'taro': continue: print('こんにちはtaroさん、パスワードを入力してください') password = input() if password == "password": break: print('認証しました')