おぼえがき

過ちては則ち改むるにうんぬんかんぬん

range関数について(Python)

f:id:feci:20210726231508j:plain

Python3

 

Python3.8.5でのrange関数について。

#①0~9までを出力
for i in range(10):
  print(i)


#②0番目を飛ばして1~9までを出力
for i in range(110):
  print(i)


#③0番目を飛ばして1から9まで2つ刻みで出力
for _ in range(1102):
  print(_)

 

range関数は、引数に指定した数値(Z)を個数として処理する、「0からはじまる(Z-1)までの連続した数値」を要素としてもつオブジェクトを作成します。

なので①を実行すると、0から9までの連続した10個の数値(Z)が10行にわたって1つずつ出力されます。

 

①の出力結果

0
1
2
3
4
5
6
7
8
9

 

 

②のようにカンマを使って2つの数値を引数として指定すると、1つ目の数値で指定した位置から、連続した数値の出力が開始されます。

つまり、以下のような結果になります。

 

②の出力結果

1  #1つ目の引数で指定した位置からスタート。
2
3
4
5
6
7
8
9

 

 

③のようにカンマを使って3つの数値を引数として指定すると、1つ目の数値で指定した位置から、3つ目の数値で指定した間隔で、連続した数値が出力が開始されます。

つまり、以下のような結果になります。

 

③の出力結果

1  #1つ目の引数で指定した位置からスタート。
3
5
7
9  #3つ目の引数で指定した数値の間隔で数値が表示される。

 

 

ちなみに③のパターンでは、変数名に_を指定しています。

変数名に_を使うのは、「その戻り値を今後再利用する必要はありませんよ」という意思表示らしいです。

 

変数名に_を使っていると、他のプログラマーさんがこのプログラムを見たときに一瞬で「ああ、この処理の戻り値は必要ないんだな」と分かってもらうことができます。

Pythonのプログラミングには、そういう暗黙の了解があるようです。

 

 

以上です。