Python の浮動小数点範囲
Python の組み込み range() 関数を使用すると、整数のシーケンスを生成できます。ただし、浮動小数点数を扱う場合は、直接の range() では十分ではありません。
問題: 非整数ステップ サイズ
range() の使用) ステップ引数として浮動小数点を使用すると、エラーが発生します:
<code class="python">>>> range(0.5, 5, 0.5) Traceback (most recent call last): File "<pyshell#10>", line 1, in <module> range(0.5, 5, 0.5) ValueError: range() step argument must not be zero</code>
これは、range() がステップ サイズを整数である必要があるためです。
解決策:除算ベースのリスト内包表記
浮動小数点範囲を作成する 1 つの方法は、リスト内包表記と除算を組み合わせることです。
<code class="python">[x / 10.0 for x in range(5, 50, 15)]</code>
この内包表記は、範囲内の各要素を除算します(5 、50、15) x 10.0 を計算して、浮動小数点シーケンスを生成します。
代替: Map と Lambda
別の方法では、map() 関数とラムダを使用します。式:
<code class="python">map(lambda x: x / 10.0, range(5, 50, 15))</code>
ここで、ラムダ式は範囲内の各数値を 10.0 で除算して浮動小数点数に変換します。 map() はこの関数を範囲内のすべての要素に適用し、浮動小数点シーケンスを生成します。
以上がPython で浮動小数点範囲を生成するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。