制御構文



もし~ならば(if, else, elsif)


「if構文」は、「もし」という意味で、条件式が「真」であれば、インデントされた実行プログラムを実行し、「偽」であれば、「else」のインデントされた実行プログラムが実行される。
「if構文」では、「False」「数値の 0 や 0.0」「空文字("")」「空リスト([])」「空タプル(())」「空辞書({})」などを「偽」と判断する。


if 条件式:
実行プログラム
elif 条件式:
実行プログラム
else:
実行プログラム



~のあいだ(while, else)


「while構文」は、条件式を満たす間、ずっと実行プログラムを実行する条件構文。


書式

while 条件式:
実行プログラム
else:
実行プログラム



~のあいだ(for, in)


「for構文」は、条件式に置かれた「リスト」「タプル」の各要素、「辞書」のキー、文字列の各文字、ファイルの各行など、全ての要素に対して、繰り返し実行プログラムが実行される。


書式

for 変数 in 条件式:
実行プログラム
else:
実行プログラム


サンプルコード

for n in [1, 2, 3]:
print n # 出力結果 : 1, 2, 3
for n in (1, 2, 3):
print n # 出力結果 : 1, 2, 3
for k in {'one': 1, 'two': 2, 'three': 3}:
print k # 出力結果 : one, two, three
for c in "123":
print c # 出力結果 : 1, 2, 3
for line in open("sample.txt"):
print line # 1行ずつ表示

range() を使用すると指定値まで処理を繰り返す。
for n in range(10):
print n # 出力結果 : 1, 2, 3〜10

文字列に指定した場合は、それぞれの文字に対して実行します。

for c in u'あいうえお':
print c # あ, い, う, え, お

for n in [1, 2, 3]:
print n
else:
print 'END' # 出力結果 : 1, 2, 3,END



ループを抜ける(break)


「break」は、「while」「for」などの繰り返し処理から抜け出すための命令。
は最も内側の while, for などのループ処理を抜けます。下記の例では n が 5の時に forループを抜けます。

for 変数 in 条件式:
実行プログラム
if n == 5:
break
else:
実行プログラム



ループを繰り返す(continue)


「continue」は、「while」「for」 などのループ処理を明示的に継続させ、繰り返しの最初に戻る。
処理を間違えると無限ループになりやすいので注意。


for 変数 in 条件式:
実行プログラム
if n == 5:
continue
else:
実行プログラム



例外処理(try, except, else, finally, raise)




try:
実行プログラム
except [expression]:
実行プログラム
else:
実行プログラム
finally:
実行プログラム