制御⽂文(1)
• if: 条件分岐のための構⽂文
45
#
if
文で条件分岐ができる
#
一段(space
x
4)下げることでブロックを表す
#
条件が真のときだけそのブロックが実行される
s
=
"good"
if
s
==
"good":
print("good")
elif s
==
"bad":
print("bad")
else:
print("?")
#
if
のみ、 if-‐else
のみでもOK
s
=
"bad"
if
s
==
"good":
print("good")
この場合は条件に合致しないので
なにも出⼒力されいない。
46.
制御⽂文(2)
• for: 繰り返しのための構⽂文
46
#
for
で処理を複数回繰り返せる
for
i in
[0,
1,
2,
3,
4]:
print("i:",
i)
#
break
で途中終了できる
#
基本的に if
文と組み合わせて使う
#
range(i,
j)
で i から j
-‐ 1
までの連番を生成できる
#
今回は [0,
1,
2,
3,
4]
と同じ結果になる
for
i in
range(0,5):
if
i ==
3:
break
print("i:",
i)
47.
制御⽂文(3)
47
#
range
は3つ目の引数でn
個ずつ要素を飛ばせる
for
i in
range(0,
20,
3):
print(i)
#
continue
で以降の部分をスキップし次のループに入れる
#
基本的に if
文と組み合わせて使う
for
i in
range(0,5):
if
i ==
3:
continue
print("i:",
i)
#
enumerate
関数でインデックス番号も同時に取得しながらループできる
l
=
["a",
"b",
"c",
"d",
"e"]
for
i,
x
in
enumerate(l):
print(i,
x)
解答例(1−-1)
54
for
i in
range(1,
31):
print(fizzbuzz(i))
def fizzbuzz(n):
if
n
%
15
==
0:
return
"fizzbuzz"
elif n
%
5
==
0:
return
"buzz"
elif n
%
3
==
0:
return
"fizz"
else:
return
n