forは、繰り返すときに使います。
a=(2,5,10)
for x in a:
print x
2
5
10
xが、繰り返しで変化する変数です。
aが、配列です。配列の数だけ繰り返します。
:は忘れないでつけます。
次の行から、繰り返したい文を、tabでスペースをあけて、書きます。
中身は、文字でもいいし、タプル()でもリスト[]でもいいです。
b=["apple","orange","grape"]
for x in b:
print x,
apple orange grape
1から100まで繰り返すとき、いちいち a=(1,2,3,4,…… などど作るのは面倒です。そーいうときは、rangeを使うと楽です。
range(x) や、range(x1,x2)、range(x1,x2,x3) のように使います。
print range(5)
[0, 1, 2, 3, 4]
配列ができましたね。
print range(3,7)
[3, 4, 5, 6]
スライスと同じ感じですね。[3:7]ではなくて、(3,7)になっただけです。
では、forに使ってみましょう。
for c in range(10):
print c,
0 1 2 3 4 5 6 7 8 9
もうひとつ例を
for c in range(21,30):
print c,
21 22 23 24 25 26 27 28 29
range(x1,x2,x3)で、x3ずつ、数字を変化させられます。
print range(1,10,2)
[1, 3, 5, 7, 9]
マイナスもできます。
print range(100,0,-10)
[100, 90, 80, 70, 60, 50, 40, 30, 20, 10]
応用です。forの中にforがあります。日曜から始まる4週間のカレンダーです。
n=0
week=("sun","mon","tue","wed","thu","fri","sat")
for a in range(4):
for b in week:
n=n+1
print n,b,
1 sun 2 mon 3 tue 4 wed 5 thu 6 fri 7 sat 8 sun 9 mon 10 tue 11 wed 12 thu 13 fri 14 sat 15 sun 16 mon 17 tue 18 wed 19 thu 20 fri 21 sat 22 sun 23 mon 24 tue 25 wed 26 thu 27 fri 28 sat
繰り返しのforをみてきました。次も繰り返しのwhileです。