今回はPythonで0.1刻みにfor文のループをする方法を3つ解説していきます。
無料オンライン相談を活用しよう!
Pythonというプログラミング言語は機械学習の人気の高まりなどもあり、様々なスクールが無料説明会を開催しています。
その中でも「Freeks(フリークス)|業界初!10,780円のサブスク型プログラミングスクール」がオススメです。Pythonを効率よく学びたいという方はまずは適性を知るためにも無料説明会を利用しましょう。
rangeを使う方法
この方法が一番簡単です。
応急措置的な使い方では便利ですがなぜ10で割る必要があったのかをコメントで残しておきましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
for i in range(0, 10): print(i / 10) """ 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 """ |
リスト内包表記
この方法は、先ほどの「range」を使う方法と考え方が似ていますが、可読性が良くなるため、先ほどの手法よりもオススメです。
リストにループさせる値を保存してからfor文で回していきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
for i in [i / 10 for i in range(10)]: print(i) """ 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 """ |
リスト内包表記についてはこちらの記事で詳しく記述しています。
参考:【Python入門】初めてのプログラミング(内包表記)
numpyを使う方法
numpyの「arange」と、「round」を用いて、「arange」で出てしまう小さな誤差を丸めていきます。
「for」文の第三引数で「0.1」と設定しているため、非常にわかりやすくなります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
import numpy as np for i in np.arange(0, 1, 0.1): print(np.round(i, 1)) """ 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 """ |
ありがちな失敗例
ループ文といえば「for」文ですが、第三引数にはステップ数を設定することが出来ます。
デフォルトでは「1」ずつとなっており省略可能ですが、「2」とすると、2飛ばしでループをしてくれます。
1 2 3 4 5 6 7 8 9 10 11 |
for i in range(0, 10, 2): print(i) """ 0 2 4 6 8 """ |
なので、目的の「0.1」ずつループさせようと思ったら第三引数には「0.1」を入れようと考えますが、「int」型(整数型)しか受け付けないようになっています。
1 2 3 4 5 6 7 |
for i in range(0, 1, 0.1): print(i) """ TypeError: 'float' object cannot be interpreted as an integer """ |
ならばと、ステップ数を少数で設定できる、numpyの「arange」と使うと、小さな誤差が出てきてしまいます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
import numpy as np for i in np.arange(0, 1, 0.1): print(i) """ 0.0 0.1 0.2 0.30000000000000004 0.4 0.5 0.6000000000000001 0.7000000000000001 0.8 0.9 """ |
まとめ
最後まで記事を読んでいただきありがとうございます!
今回は、「for」文で0.1刻みでループをする方法を記述しました。調べたら簡単だったけど、知らなかったという方も多いのではないでしょうか?
0.5刻みなども定数を変更するだけで簡単に実装が可能なのでぜひトライしてみてください!
「目的の処理ができるプログラムを組めればいい!」と思う人も、ぜひ可読性を意識した読みやすいプログラムを作成してみてください。
自分もよく使っていた参考書です。よろしければ手に取ってみてください。非常にわかりやすかった代物です。
無料の説明会を有効活用しよう!
独学での学習は孤独感を感じやすく挫折してしまう初心者も多いです。また、参考書を購入しても全く読む気にならないという方も多いはずです。
それでも、なんとかPythonの勉強を行い、高スキルなエンジニアを目指したいという方は無料で受けられるオンライン説明会に参加してみることも一つの手です。
Pythonというプログラミング言語は機械学習の人気の高まりなどもあり、様々なスクールが無料説明会を開催しています。
その中でも「Freeks(フリークス)|業界初!10,780円のサブスク型プログラミングスクール」がオススメです。Pythonを効率よく学びたいという方はまずは適性を知るためにも無料説明会を利用しましょう。
パソコン操作にお困りではありませんか?
ExcelやWordなど、基本的なソフトの使い方がいまいちわからないという方には、「PCHack」という講座をオススメしています。スクールの中でもコストパフォーマンスに優れ、オンラインなのでどこでも好きな時間に学習できます。
3万円ほどでPC初心者を脱出したい方は参考にしてください。
【PC初心者必見!】パソコンの勉強方法が分からないならPCHack講座がオススメ!