Python2覚書 制御構造

条件分岐

if文は下のように記述します。

if 式:
   文
   文
if str1 == "abc" and str2 != "def":
    str = "pqr"   #文
else:
    str = "xyz"   #文
if x == 1 and y != 0:
    z = 1   #文
elif x >= 2 or y < 0:
    z = 2   #文
else:
    z = 3   #文

if文とインデントの使い方

階層構造の場合はインデントを入れます。

if 式:
    if 式:
        文
        if 式:
            文
        else:
            文
    else:
        文
else:
    文 

繰り返し

for文

リストやタプルなどをシーケンスとして各要素ごとにループ処理を行います。

for i in [0,1,2,3]:
    print i
for i in (0,1,2,3):
    print i
range関数

リストを戻り値とするrange関数を使うとfor文を簡潔に記述することができます。例えば、range(5)は0〜4までのリストを返します。

[0,1,2,3,4]

0から4までのループ処理の例です。

for i in range(5):
    print i
while文とbreak,continue
y = 0
while y < 10:
    y += 1
    if y == 7:
        break
    elif y == 5:
        continue
pass文

Pythonの仕様では、空白とコメントのみの行はスキップされるため、下のような処理では、while内の処理を書いていないことになり、コンパイルエラーとなってしまいます。(C言語ではかっこを閉じていない状態に対応する)
何もしないという処理はpass文を使って記述することができます。

compile error
while True:    #割り込み処理待ち
    #Do Nothing
OK
while True:    #割り込み処理待ち
    pass