Python で同等の浮動小数点範囲
Python の range() 関数は、浮動小数点数のシーケンスの生成をネイティブにサポートしていません。これは、10 進数値を扱う場合に制限となる可能性があります。
次の例を考えてみましょう:
<code class="python">>>> range(0.5, 5, 1.5) [0, 1, 2, 3, 4]</code>
ご覧のとおり、結果のシーケンスには実際の開始点 0.5 が除外されています。
これを解決するには、次のいずれかの方法を使用して浮動小数点範囲を作成できます。
リスト内包表記の使用
<code class="python">[x / 10.0 for x in range(5, 50, 15)]</code>
これによりリストが初期化されます。値は 0.5 ~ 4.5 の範囲で 0.5 ずつ増加します。
Lambda と Map の使用
<code class="python">map(lambda x: x / 10.0, range(5, 50, 15))</code>
これにより、ラムダ関数 x / 10.0 を適用するマップ オブジェクトが作成されます。範囲内の各値に変換し、リスト内包表記と同様のシーケンスになります。
以上がPython で浮動小数点範囲シーケンスを作成するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。