for構文と「range関数」を使って100回くりかえす命令をつくってみるよ!

for構文と「range関数」を使って100回くりかえす命令をつくってみるよ!

for構文のおさらい

前回はfor構文の使い方を覚えたね。例えば「1から5までを表示しろ」だったらこんな書き方だった。

# codeing=utf-8

for i in [1,2,3,4,5]:
    print(i)

▽ 実行結果

1
2
3
4
5

1から5までだから[1,2,3,4,5]って書いてるんだね。でも100まで数えたいときはどうしたらいいんだろう?[1,2,3, …100]って100まで書けばできるけど大変すぎるよねw

range関数を使ってみよう!

「100回数える」みたいにたくさんの命令を繰り返す時に便利なのが「range関数」だ。書き方はこんな感じ。

range(①開始する値, ②終了する値)

これをfor構文の[1,2,3,4,5]の代わりに入れるんだ。そうすると①からはじまって②未満の数まで繰り返してくれるよ。この「未満」ってところが注意だ。実際に書いてみよう!

# codeing=utf-8

for i in range(1, 5+1):
    print(i)

▽ 実行結果

1
2
3
4
5

これで1から5まで表示できたね。②に入れる数字は「5」じゃなくて「5+1」にしてるところがポイント。「未満」まで繰り返してくれるんだから「5」を入れると1つ手前の「4」までしか繰り返してくれない。だから+1してひとつ大きい数字を入れてるんだ。

このやり方なら「100まで繰り返す」ってときでも下みたいに簡単にかけるからラクチンだね!

# codeing=utf-8

for i in range(1, 100+1):
    print(i)

0から数えてrange関数を使う

range関数はちゃんと使えたけど、正直②が「未満までしか繰り返してくれない」ってところはわかりにくいよね。なんでこんなふうになってるかっていうと、プログラムは0から数えるものだからなんだ。

だから「0から5未満」って書き方をするとこうなる。

# codeing=utf-8

for i in range(0, 5):
    print(i+1)

▽ 実行結果

1
2
3
4
5

「range(0, 5)」のところが+1しなくていいからわかりやすくなったね。でもその分表示する数字がずれちゃうから、4行目でprint(i+1)にして合わせてることに注目だ。

0から数えるrange関数は省略して書ける

range関数には省略した書き方もあるんだ。今回みたいに0から数える場合はこんな風にも書ける。

# codeing=utf-8

for i in range(5):
    print(i+1)

▽ 実行結果

1
2
3
4
5

5回くりかえしたいからrange(5)と書くだけ。わかりやすいよね。この書き方はよく使うから下のような構文として覚えておこう!

for 変数 in range(回数):
    繰り返す命令
今日のまとめ

  • 「for構文」をおさらい!
  • 「range関数」を覚えよう!
  • 「range関数」の省略形も覚えよう!