Python 制御構文
インデントとブロック
- Python ではインデントが文法上の意味を持っている
C において if や for のブロックを {} で囲うように、Python ではインデントを使ってブロックを表す。
if i < 0:
# ここが本文
print(u"i は 0 より小さい")
else:
# else の時はここが実行される
print(u"i は 0 以上")
# ここは if の外
print(u"i の値は関係ない")
if 文
if の後ろに条件式を書く。if と : に挟まれた部分が条件式となる。この全体に対しては括弧はいらない。
if i < 0:
# ここが本文
print(u"i は 0 より小さい")
else:
# else の時はここが実行される
print(u"i は 0 以上")
# ここは if の外
print(u"i の値は関係ない")
else if
if i == 0:
print("i == 0")
elif i < 0:
print("i < 0")
else:
print("0 < i")
for 文
- Python の
for は C の for とは違う。
- C# でいうところの
foreach と同じものである。
- フォーマットは↓の通り。
for f in files:
pass
for d in ["one", "two", "three"]:
print(d)
# one
# two
# three
# と表示される。コレクションの中身が順番に変数に入っていく。
- ループ全体を中断する場合は
break
- ループ全体は継続したまま、今回分を飛ばすときは
continue
for d in ["one", "two", "three"]:
if d == "two":
break
print(d)
# one
for d in ["one", "two", "three"]:
if d == "two":
continue
print(d)
# one
# three
while 文
while は以下のフォーマット
condition のところに条件式を書く
condition 全体を () でくくる必要はないが、: は必要。
while condition:
pass
while でも break と continue が使える。