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関数自体は整数専用ですが、リスト内包表記で各要素を割るなどの計算を加えることで、小数のリストを作ることが可能です。