Python

【Python】繰り返し(第7回)

繰り返しについての学習をします。

準備をしよう

下のURLをクリックして、「paiza.IO」を開いてください。
https://paiza.io/ja/projects/new

学習内容

繰り返しとは

繰り返しとは、プログラミングの基本処理の1つで、同じ処理を繰り返すことです。

同じ処理を何度も書いて実行させるのは効率が悪いです。プログラミングでは、繰り返しという処理を使うことで、コンピュータに同じことを何度も実行させることができます。

回数を指定して繰り返す、何かの条件が満ちるまで繰り返す、など繰り返しのパターンがいくつかあり、それによって、構文も異なります。

ここでは、代表的なPythonの繰り返し処理を紹介します。

while文

ある条件が満ちるまで繰り返すものです。

イメージ

ある処理に入る前に「Yes?」と聞かれ、Yesなら処理を再度実行、Noならそこで終了、という動作をします。

書き方

以下のように書きます。

  1. whileの隣の( )を「条件式」と呼びます。これは、真偽値(TrueかFalseになるもの)が返る式です。
  2. 「繰り返す処理」は、条件式がTrueになる間は、ずっと繰り返されます。条件式がFalseになったら繰り返しを終了します。

具体的に見ていきましょう。

  1. 変数「num」をもともと1で初期化しておきます。条件式は「num <= 5」なので、numが5まではTrueになり続けるので、繰り返しを継続します。
  2. 「繰り返す処理」は、numの中身を表示するのと、numを1上げています。これで繰り返すたびに、numが1ずつ増えていきます。

※ インデントについて

字下げのことをインデントといいます。Pythonでは、インデントに意味があるので、変にインデントをするとエラーが起きます。

繰り返し処理の際、繰り返しの中身の処理は、インデントを使います。それによって、中に入っていることを示します。

インデントの方法は、Tabキーは使わず、半角スペースで行う方がよいです。(通常半角スペース4こ)

練習

paiza.IOに、以下のコードを入れて下さい。

num = 1
while num <= 3:
    print(num)
    num += 1

※ 「num += 1」は「num = num + 1」と同じ意味です。1だけ加算します。

実行結果

コードを実行してみましょう。

1
2
3

for文

回数を指定して繰り返すものです。

イメージ

単純に、指定回数まで繰り返す、という動作をします。

書き方

以下のように書きます。

  1. range(回数)のところで、繰り返しの回数を指定します。回数は「0」から始まり、繰り返すごとに、指定数の1つ前まで上がっていきます。(「3」と指定した場合、「0」→「1」→「2」)
  2. numには、上記「0」→「1」→「2」が、繰り返すごとに順番に入ります。これを「カウンタ変数」といいます。(カウンタ変数名は「num」である必要はなく、名前は自由につけられます。)
  3. カウンタ変数は、「繰り返す処理」の中でも利用することができます。

具体的に見ていきましょう。

  1. 繰り返し回数を「3」として指定しています。
  2. numには、「0」→「1」→「2」と繰り返しごとに、順番に入ります。
  3. 繰り返し処理内では「num」を利用し、print()で表示しています。
練習

paiza.IOに、以下のコードを入れて下さい。

for num in range(3):
    print(num)
実行結果

コードを実行してみましょう。

0
1
2

for文 + リスト

リストの中身を順番に取り出す処理です。

イメージ

リストを頭から順番に取り出して、何らかの処理を行います。

書き方

以下のように書きます。

  1. 「リスト」のところで、利用するリストを指定します。リストの「0」番目から始まり、繰り返すごとに最後の要素まで進みます。
  2. 「data」はリストから取り出した要素を保存するための変数です。リストから該当番号の要素を取り出してdataに保存します。(変数は「data」である必要はなく、名前は自由につけられます。)
  3. 変数は、「リスト要素を使った処理」の中で利用します。

具体的に見ていきましょう。

  1. あらかじめリスト「fruits」を生成し、for文で利用しています。
  2. 変数「fruit」には、リスト「fruits」から繰り返しごとに、順番に要素が取り出され保存されます。
  3. 処理内では「fruit」を利用し、print()で表示しています。
練習

paiza.IOに、以下のコードを入れて下さい。

fruits = ["apple", "orange", "melon"]
for fruit in fruits:
	print(fruit)
実行結果

コードを実行してみましょう。

apple
orange
melon

コード全体

練習
# while文
num = 1
while num <= 3:
    print(num)
    num += 1

# for文
for num in range(3):
	print(num)
	
# for文 + リスト
fruits = ["apple", "orange", "melon"]
for fruit in fruits:
	print(fruit)
実行結果
1
2
3
0
1
2
apple
orange
melon

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

まとめ

以上になります。今回は繰り返しについてお伝えしました。

今回紹介したwhile文とfor文は繰り返しの基本構文です。実際には、これらを応用して様々な処理を作ります。まずは、手を動かしながら、概念と使い方を理解して下さい。

タイトルとURLをコピーしました