繰り返し処理
すでにリストのところで出てきていますが、プログラムでは同じ処理を、値を変えて繰り返す処理がよく出てきます。こうした処理を利用することで、大量のデータを処理していくことができます。
Pythonではfor
文やwhile
文で、繰り返し処理をおこなえます。
リストとfor文
まずはリストとfor
文の組み合わせです。すでに出てきた書き方の復習です。
animals = ["cat", "dog", "bear"] for name in animals: print(name)
cat dog bear
要素のインデックスと値を得たいときはenumerate()
関数を使います。プログラムと出力の例を示します。
animals = ["cat", "dog", "bear"] for i, name in enumerate(animals): print(i, name)
0 cat 1 dog 2 bear
range()関数
リストを使わずに、数値だけでfor
文を実行したいときは、range()
関数を使います。range(stop)
と書くと、0
から始まり、1
ずつ大きくなり、stop
未満まで処理をおこないます。
プログラムと出力の例を示します。0
から始まり、1
ずつ大きくなり、4
未満まで(この場合は3
まで)処理をおこないます。
for i in range(4): print(i)
0 1 2 3
range()
関数は引数を増やせます。引数を2つにするとrange(start, stop)
の意味になります。引数を3つにするとrange(start, stop, step)
の意味になります。start
から値を開始して、1
ずつあるいはstep
ずつ値を増やして、stop
未満まで処理をおこないます。
プログラムと出力の例を示します。まずは引数2つの場合です。1
から始まり、1
ずつ大きくなり、4
未満まで(この場合は3
まで)処理をおこないます。
for i in range(1, 4): print(i)
1 2 3
プログラムと出力の例を示します。次は引数3つの場合です。1
から始まり、2
ずつ大きくなり、4
未満まで(この場合は3
まで)処理をおこないます。
for i in range(1, 4, 2): print(i)
1 3
while文
while
文は、while 条件式:
の、条件式がTrue
のあいだ処理を続けます。for
文が回数に注目した繰り返しだったのに対して、while
文は条件を満たすかに注目した繰り返しです。
プログラムと出力の例を示します。変数num
の値を1
から始めて、1
ずつ足していき、4
未満のあいだ処理を続けます。
num = 1 while num < 4: print(num) num += 1
1 2 3
breakとcontinue
繰り返し処理は、途中で打ち切ったり、飛ばしたりすることができます。
繰り返し処理を途中で打ち切るときはbreak
文を使います。
プログラムと出力の例を示します。if
文を使い、変数i
の値が2
のときに、break
文で処理を打ち切っています。
for i in range(4): if i == 2: break print(i)
0 1
繰り返し処理を途中で飛ばすときはcontinue
文を使います。
プログラムと出力の例を示します。if
文を使い、変数i
の値が2
のときに、continue
文で処理を飛ばしています。
for i in range(4): if i == 2: continue print(i)
0 1 3