range 関数
CoddyのPythonジャーニー「基礎」セクションの一部。レッスン 40/77。
Python の range() 関数は数値のシーケンスを生成します。これは、コードを特定の回数繰り返すために for ループとよく一緒に使用されます。
0 から始まり 4 で終わる範囲を作成します。
for i in range(5):
print(i)出力結果は次のようになります:
0
1
2
3
4開始値を指定することもできます。
for i in range(2, 6):
print(i)次のように出力されます:
2
3
4
5ステップ値(増分)も指定できます:
for i in range(1, 10, 2):
print(i)次のように出力されます:
1
3
5
7
9逆方向に数える(降順):
負の step 値を使って、逆方向に数えることもできます。負の step を使う場合、start 値は end 値より大きくなければなりません:
for i in range(10, 0, -1):
print(i)次のように出力されます:
10
9
8
7
6
5
4
3
2
1より大きな負のステップも使用できます:
for i in range(20, 9, -2):
print(i)次のように出力されます:
20
18
16
14
12
1010 が出力に含まれていることに注目してください。end の値が 9 であるにもかかわらずです。これは、end の値が排他的だからです。つまり、現在の値が end の値より大きい限り、loop は続きます。10 > 9 なので、10 が出力されます。次の値は 8 になりますが、これは 9 より大きくないため、loop は停止します。
重要なポイント: 負の step を使用する場合、start の値は end の値より大きくなければなりません。end の値は引き続き排他的です(含まれません)。
チャレンジ
初心者range()関数を使って数値を出力するforループを書きましょう。プログラムでは次のことを行います:
- 3つの数値を入力として読み取る:
start、end、step range(start, end, step)を使ったforループで、指定されたstepの増分に従い、startからendまで(endは含まない)のすべての数値を出力する- 各数値を新しい行に出力する
手順:
- 入力を読み取るコードはすでに用意されています
- コメントをforループに置き換える
- ループ内で
range(start, end, step)を使う
自分で試してみよう
# ユーザーから入力を取得
start = int(input())
end = int(input())
step = int(input())
# ここにforループを書いてください
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Pythonオンラインコンパイラ