【Python3】制御文(条件分岐と繰り返し処理)
if文(条件分岐)
条件によって処理を振り分けるための制御文です。
条件が1個の時
if 条件式:
条件式が真の時に実行する処理1
条件式が真の時に実行する処理2
else:
条件式が偽の時に実行する処理1
条件式が偽の時に実行する処理2
条件が複数ある時
if 条件式:
条件式1が真の時に実行する処理1
条件式1が真の時に実行する処理2
elif 条件式:
条件式2が真の時に実行する処理1
条件式2が真の時に実行する処理2
else:
条件式1と2がいずれも偽の時に実行する処理1
条件式1と2がいずれも偽の時に実行する処理2
※elif は else if を短くしたもの
ループ文(while)
指定した「条件」を満たしている間は、処理を繰り返す制御文です。
n = 0
while 条件:
実行する処理1
実行する処理2
n = 0;
while n < 10:
print n
n += 1
else 節
else がある場合には、ループの最後に else 節が実行されます。
n = 0
while n < 10:
print n
n += 1
else:
print 'ループ終了'
for文
for 変数 in リスト、タプルの各要素、辞書のキー、文字列の各文字、ファイルの各行など :
実行する処理1
for n in [1, 2, 3]:
print n
for n in (1, 2, 3):
print n
for k in {'one': 1, 'two': 2, 'three': 3}:
print k
for c in "123":
print c
for line in open("sample.txt"):
print line
else 節
else がある場合には、ループの最後に else 節が実行されます。
for n in [1, 2, 3]:
print n
else:
print 'ループ終了'n
range() 関数
処理を n 回繰り返したい場合は range() を使用します。
for n in range(5):
print n
range() 関数では、開始値を指定したり、増加量(負の数でも可)も指定できます。
range(5, 10)
5 through 9
range(0, 10, 3)
0, 3, 6, 9
range(-10, -100, -30)
-10, -40, -70
文字列指定
文字列に指定した場合は、それぞれの文字に対して実行します。
for c in u'あいうえお':
print c
break文
最も内側のループを抜けます。
for n in range(10):
if n == 5:
break
print n # 0, 1, 2, 3, 4
continue文
最も内側のループ処理を繰り返します。
for n in range(10):
if n == 5:
continue
print n # 0, 1, 2, 3, 4, 6, 7, 8, 9