step 7 制御命令 if

if

ifは、条件を判断して、実行します。

if 条件: で、後は、タブでスペース空けて、文を書きます。

==で、等しいかどうかを判断します。


for i in range(7):
    print i,
    if i==2:
        print "two",

0 1 2 two 3 4 5 6

iが2のときに、twoとでました。

< や > で、より大きいやより小さい、<= や>= で、以上や以下を判断します。


for i in range(7):
    print i
    if i<3:
        print i,"は3より小さい"

0
0 は3より小さい
1
1 は3より小さい
2
2 は3より小さい
3
4
5
6

for i in range(7):
    print i
    if i<=3:
        print i,"は3以下"

0
0 は3以下
1
1 は3以下
2
2 は3以下
3
3 は3以下
4
5
6

前も出ましたが、!= や <> で、「ではない」を判断します。==の逆ですね。


for i in range(7):
    print i
    if i!=3:
        print i,"は3ではない"

0
0 は3ではない
1
1 は3ではない
2
2 は3ではない
3
4
4 は3ではない
5
5 は3ではない
6
6 は3ではない

else

elseは、if の条件と違うとき、実行します。


for i in range(7):
    if i==3:
        print i,"は参です。"
    else:
        print i,"は参ではない"

0 は参ではない
1 は参ではない
2 は参ではない
3 は参です。
4 は参ではない
5 は参ではない
6 は参ではない

elif

if で、条件とあわないとき、elifで、ふたたび、別の条件を判断できます。


for i in range(7):
    if i==2:
        print i,"はtwoです"
    elif i==5:
        print i,"はfiveです"
    else:
        print i,"はtwoでもfiveでもないです"

0 はtwoでもfiveでもないです
1 はtwoでもfiveでもないです
2 はtwoです
3 はtwoでもfiveでもないです
4 はtwoでもfiveでもないです
5 はfiveです
6 はtwoでもfiveでもないです

elifは、いくつでも入れられます。


for i in range(7):
    if i==2:
        print i,"はtwoです"
    elif i==5:
        print i,"はfiveです"
    elif i==6:
        print i,"はsixです"
    else:
        print i,"はtwoでもfiveでもsixでもないです"

0 はtwoでもfiveでもsixでもないです
1 はtwoでもfiveでもsixでもないです
2 はtwoです
3 はtwoでもfiveでもsixでもないです
4 はtwoでもfiveでもsixでもないです
5 はfiveです
6 はsixです

break,continue (for)

while で、breakやcontinueを紹介しましたが、forでもできます。


for i in range(7):
    if i==3:
        print i,"は参です。"
        break
    else:
        print i,"は参ではない"

0 は参ではない
1 は参ではない
2 は参ではない
3 は参です。

breakで、抜けましたね。


for i in range(7):
    if i==3:
        continue
        print i,"は参です。"
    else:
        print i,"は参ではない"

0 は参ではない
1 は参ではない
2 は参ではない
4 は参ではない
5 は参ではない
6 は参ではない

continueで、後の処理をせず、forへと戻って、繰り返しています。

pass

passはなにもしません。


pass


管理人:人泣礼(hitonaki@starword.org)