【Python】range関数を使いこなす!現役データサイエンティストが解説

Python

Pythonには、コーディングを簡素化し、プログラムの読みやすさと効率を向上させるための多くの組み込み関数があります。この記事では、その一つであるrange関数の使い方について詳しく解説します。range関数を使いこなして、一段レベルアップしていきましょう!

range関数の基本

range関数は、一連の数値を生成するための組み込み関数です。これは、forループでの繰り返し処理など、特定の回数を実行するタスクを行う際に特に有用です。

range関数の基本的な構文は次のとおりです。

range(stop)
range(start, stop[, step])

引数の解説

  • start:数列の開始点を指定します。この引数を省略すると、デフォルトの開始値は0になります。
  • stop:数列の終了点を指定します。ただし、この値は数列に含まれません。つまり、range(5)は0から4までの数字を生成します。
  • step:数列でのステップ(または間隔)を指定します。この引数を省略すると、デフォルトのステップは1になります。

range関数の使用例

1. 基本的な使用法

最も基本的な使用法は、stopの値だけを指定する方法です。この場合、0からstopの値まで(ただし、stopの値は含まれない)の連続する整数を生成します。

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

上記のコードを実行すると、次の出力が得られます。

0
1
2
3
4

2. startとstopの指定

次に、startとstopの値を指定する方法を見てみましょう。この場合、startの値からstopの値まで(ただし、stopの値は含まれない)の連続する整数を生成します。

for i in range(2, 7):
    print(i)

上記のコードを実行すると、次の出力が得られます。

2
3
4
5
6

3. start, stop, stepの指定

最後に、start、stop、stepのすべての値を指定する方法を見てみましょう。この場合、startの値からstopの値まで(ただし、stopの値は含まれない)、stepの間隔で連続する整数を生成します。

for i in range(0, 10, 2):
    print(i)

上記のコードを実行すると、次の出力が得られます。

0
2
4
6
8

range関数の応用例

1. 逆順のリストの生成

range関数を使用して逆順のリストを生成することも可能です。これは、startの値を大きな値にし、stopの値を小さな値にし、stepの値を負の数に設定することで実現します。

for i in range(10, 0, -1):
    print(i)

このコードを実行すると、次の出力が得られます。

10
9
8
7
6
5
4
3
2
1

2. リスト内包表記での使用

range関数はリスト内包表記と組み合わせて使用することも多く、これにより簡潔なコードを書くことが可能になります。

squares = [x**2 for x in range(5)]
print(squares)

このコードは、0から4までの各整数の平方(2乗)からなるリストを生成します。出力は次の通りです。

[0, 1, 4, 9, 16]

3. 文字列のインデックス生成

また、range関数を使用して文字列のインデックスを生成することも可能です。これは、文字列内の特定の文字を走査する際に特に便利です。

word = "Python"
for i in range(len(word)):
    print(f"Character at index {i} is {word[i]}")

上記のコードは、文字列の各文字とそのインデックスを出力します。出力結果は以下の通りです。

Character at index 0 is P
Character at index 1 is y
Character at index 2 is t
Character at index 3 is h
Character at index 4 is o
Character at index 5 is n

まとめ

以上がPythonのrange関数の使い方についての解説になります。初学者から上級者まで、全てのPythonユーザーがこの関数を使うことで、繰り返し処理をより簡単に、より効率的に行うことができます。そして、現場レベルでも、どのレベルのデータサイエンティストでもこのrange関数は普通に使っている関数です。レベルが高い人ほど、効果的な使い方が上手いイメージがあります。

range関数の引数を理解し、実例を通じてその使い方を学ぶことで、あなたのPythonスキルは一段レベルアップするはずです。ぜひ使いこなしていきましょう!

データサイエンティストの書評ブログ
趣味が読書くらいしかない駆け出しデータサイエンティストの書評ブログです。日々の勉強のアウトプットや趣味の読書のおすすめをしていきます。
Pythonのrange関数の使い方 | note.nkmk.me
Pythonで連番を生成してfor文で使ったりそのリストを取得するにはrange()を使う。範囲やステップの指定も可能で、0からではなく1から、飛ばし飛ばし、逆順の連番も生成できる。組み込み関数 - range() — Python 3.11.3 ドキュメント range()とrange型 range()の範囲指定ra...

コメント

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