Pythonでループ処理を行う場合､ 最も一般的なツールの1つが､ Pythonに付属しているこの範囲関数です｡
これはPythonの特殊なオブジェクトで､ 開始から終了までの整数の列を生成するオブジェクトを返します｡
それをもう少し探ってみましょう｡
ここに範囲をプリントして､ 範囲100と言ったら､ 実行をクリックします｡
0から100の範囲が表示される｡
うーん｡
つまり､ タプルのように見えて､ タプルではないのです｡
範囲オブジェクトです｡
特殊なものなんです｡
そしてレンジ｡
こんな感じで､ デフォルトの0から何を与えても100になるように与えることができます｡
あるいは､ 単純にゼロ､ 100と入力することもできます｡
そして､ 実行をクリックしても､ 同じことです｡
しかし､ 範囲が本当に便利になるのは､ Pythonの99%のケースで見られるように､ forループです｡
タプル､ リスト､ セット､ 辞書､ 文字列の他に､ 範囲を反復することができます｡
例えば､ 4つのIを範囲に入れて､ 項目とするか､ この場合､ 範囲内の数字とするかです｡
そして､ この中でプリントナンバーをしています｡
これを実行すると
1から100までの数字が出るのがわかると思います｡
そして､ なぜこれが役に立つのか｡
まあ､ rangeを使って､ 100回ループすることができました｡
カウントはゼロから始まり､ 何度でもループさせることができるので､ ループを指示することができますので､ 99までのすべての方法を見ることができます｡
ある回数だけループさせたいとか､ 10回ループさせたいとか､ 何回ループさせるかを指示することができます｡
非常に便利です｡
もしかしたら､ ここで私たちは何らかのアクションを実行しているかもしれません｡
どうだろう｡
電子メール
電子メールリスト
そこで､ 例えばあるメールリストに傾向のあるメールを送りたい｡
まあ､ もう一度言いますが､ 実行をクリックすれば､ そのメールは送信されます｡
まあ､ 何度も何度も､ 10回くらいは｡
もうひとつのオモシロ技は､ そう､ 数字がいらないかもしれない､ ということですね｡
私たちのコードではあまり使っていないんです｡
Pythonのプログラムでは､ プログラマがこの変数を必要としない場合､ アンダースコアを付けて､
これは単なる変数にすることが多いようです｡
つまり､ こんな使い方ができるんです｡
そして､ やはりこのような数字が出るのですね｡
でも､ それは他の人たちに､ 「この変数が何であるかは､ どうでもいいんだ」ということを示しているだけなんです｡
レンジを使って､ 例えば10回ループさせることができるようにしているんだ｡
今､ レンジには第3のパラメーターも付いています｡
そして､ それが何なのかというと､ ステップオーバーなのです｡
ちなみにデフォルトは1ですが､ もし2回やったら､ 2回になります｡
0から10まで2倍に跳ね上がる｡
これはとても､ 便利なものです｡
では､ レンジとは何でしょうか？
さて､ レンジは特別な種類のオブジェクトを作成し､ それを反復処理することができます｡
なるほど｡
マイナスしたらどうするんだ｡
ああ､ ここか｡
もし､ マイナスになったら？
まあ､ これを実行すれば｡
ふむ｡
というのも､ うまくいかないんです｡
では､ その理由をご紹介しましょう｡
これを0と10に変えて､ マイナス1すると｡
逆の方向に進みますね｡
でも､ 10と0だけやったら｡
それじゃダメなんです｡
逆をやりたい場合は､ そのマイナスを足すようにすればいいのです｡
また､ 2回ステップバックしたい場合は､ 「実行」をクリックします｡
そのため､ 昇順､ 降順とできる範囲が広く､ 選択肢が多いのです｡
最後にもう一つ､ レンジを見ることがある場所です｡
そして､ 先ほども言ったように､ ほとんどの場合､ ループのために入っているのです｡
でも､ 例えばレンジのような面白いこともできますよ｡
10のうち
そして､ これをリストで包むと､ リスト関数は何かをリストに変換することができることを思い出してください｡
これを実行すると
見たか？
この範囲を2つにするために､ 単純化してみましょう｡
実行」をクリックすると
その目のループを2回見るのです｡
そして､ この中に､ まず､ 10個の項目を持つ反復可能なオブジェクトであるレンジを作成し､
プリントします｡
そして､ それをリストに変換するんです｡
ですから､ ここで0から9とリストまで見ることができます｡
つまり､ これは､ まあ､ 整数を持つリストを作る簡単な方法です｡
番組や旅の途中で必ず使う小技です｡
次回作でお会いしましょう｡