Pythonのrange関数とは?使い方を徹底解説|for文・リスト作成・逆順も
世界的に高い人気を誇るプログラミング言語の一つにPythonが挙げられます。
行政や民間企業など幅広く採用されており、ロボット開発やビッグデータの解析、AI(人工知能)の分野でも欠かせない存在です。
Pythonを学ぶ上で、非常に利便性が高く頻繁に使用されるのがrange関数です。
この関数を使いこなすことは、効率的なプログラミングを行うための重要な第一歩となります。
本記事では、range関数の基本的な使い方から、逆順のリスト作成、for文での活用方法まで詳しく解説します。
Pythonでrange関数を使う場面
Pythonにおいて、連続する整数のリストを自動で生成したい時にrange関数は非常に役立ちます。
主な活用シーンとして「リストの作成」と「for文での繰り返し処理」の2つのパターンに分けて解説します。
リスト
リストとは、Pythonにおける複数の値を一つにまとめて管理するためのデータ型です。
他のプログラミング言語における「配列」のような役割を果たし、データの整理に頻繁に使用されます。
例えば、0から9までの数字を一つずつ手動で入力してリストを作るのは、非常に手間がかかります。
test_list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
range関数を使えば、このような連続した数値を一瞬で生成することが可能になります。
for文
for文は、プログラミングにおける繰り返し処理を記述するための構文です。
特定の回数だけ同じ処理を実行したい場合、range関数と組み合わせることで簡潔に記述できます。
例えば、リスト内の要素を一つずつ順番に取り出して出力する際などに、絶大な効果を発揮します。
range関数の活用ポイント
連続した数値を自動生成する際に使用します。
リスト型として複数の値を管理する際に便利です。
for文と組み合わせて繰り返し処理を簡潔に記述できます。
Pythonのrange関数の基本的な使い方
ここからは、実務でよく使われる3つの指定方法について具体例を見ていきましょう。
0から任意の値までのリストを作成
最もシンプルな方法は、終了する値のみを指定して0から数値を生成する方法です。
test_list = list(range(11))
print(test_list)
この場合、実行結果は[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]となります。
注意点として、指定した数字(11)より1小さい数字が最後になることを覚えておきましょう。
任意の範囲でリストを作成
「開始する値」と「終了する値」の2つを指定すれば、特定の範囲のリストを作成できます。
test_list = list(range(4, 11))
print(test_list)
実行結果は[4, 5, 6, 7, 8, 9, 10]となり、指定した範囲の数値が取得できます。
また、開始値に「-3」などを指定すれば、負の数を含めた数列を作ることも可能です。
偶数値のみのリストを作成
3つ目の引数として「ステップ幅」を指定すると、一定の間隔で数値を生成できます。
test_list = list(range(0, 11, 2))
print(test_list)
このコードでは、0から10までの偶数値のみがリストとして出力されます。
開始値を1に設定すれば、同様の仕組みで奇数値のみのリストも簡単に作成できます。
Python de range関数で逆順のリストを作成
数値を大きい順に並べる「降順」のリストも、range関数を使えば容易に作成可能です。
ステップ幅に負の値(-1など)を指定することで、カウントダウンのような数列を生成できます。
test_list = list(range(10, 0, -1))
print(test_list)
その他、Pythonのスライス機能である「[::-1]」を末尾に付ける方法も一般的です。
さらに、reversed関数を組み合わせて使用することで、より直感的に逆順の処理を記述できます。
- ステップ幅にマイナスの値を指定する
- スライス機能を利用して反転させる
- reversed関数を用いてループ処理を行う
Pythonのrange関数で浮動小数点数floatを扱うには
range関数は整数を扱うためのものなので、そのまま小数を指定するとエラーが発生します。
小数を扱いたい場合は、リスト内包表記を活用して計算を行う手法が非常に有効です。
print([i / 10 for i in range(3, 10, 2)])
ただし、コンピュータの計算特性上、浮動小数点数には微小な誤差が生じることがあります。
その場合は、round関数を併用して桁数を指定することで、正確な数値として出力できます。
Pythonのrange関数をfor文で扱うには
for文とrange関数を組み合わせると、指定した回数だけ同じ処理を繰り返すことができます。
単なるメッセージの出力だけでなく、複雑な演算を繰り返し実行する際にも力を発揮します。
for i in range(3):
print(‘Hello, World.’)
一つずつ手作業で入力する手間を省き、プログラムによる自動化の恩恵を最大限に受けられます。
このように、range関数はコードの記述量を減らし、ミスを防ぐためにも重要な役割を担っています。
Pythonを学ぶならプログラミングスクールがおすすめ
Pythonは比較的学びやすい言語ですが、独学では挫折してしまう初心者も少なくありません。
効率的にスキルを身につけたいのであれば、プログラミングスクールの活用がおすすめです。
専門の講師によるメンタリングや、個別のカリキュラムによって、短期間での習得が可能になります。
まずは無料相談や無料体験を利用して、自分に合った学習環境を見つけることから始めましょう。
料金体系や学習形態(オンライン・オフライン)を比較し、実績のあるスクールを選ぶことが成功の鍵です。
まとめ
本記事では、Pythonのrange関数の使い方について基礎から応用まで詳しく解説しました。
range関数は、リスト作成やループ処理を劇的に効率化してくれる非常に便利な機能です。
Pythonを習得する上では避けて通れない必須知識であり、マスターすることで開発の幅が大きく広がります。
初心者の方には少し難しく感じる部分もあるかもしれませんが、実際に手を動かしてコードを書くことで理解は深まります。
体系的な学習を続け、自由自在にPythonを操れるエンジニアを目指して一歩ずつ進んでいきましょう。
よくある質問
range関数はどのような時に使いますか?
主に連続した数値のリストを作成する際や、for文で指定した回数だけ処理を繰り返したい時に使用します。
rangeで小数を扱うことはできますか?
range関数自体は整数専用ですが、リスト内包表記で各要素を割るなどの計算を加えることで、小数のリストを作ることが可能です。
