Équivalent de plage à virgule flottante en Python
La fonction range() de Python ne prend pas en charge nativement la génération de séquences de nombres à virgule flottante. Cela peut constituer une limitation lorsque vous travaillez avec des valeurs décimales.
Considérez l'exemple suivant :
<code class="python">>>> range(0.5, 5, 1.5) [0, 1, 2, 3, 4]</code>
Comme vous pouvez le voir, la séquence résultante exclut le point de départ réel de 0,5.
Pour surmonter ce problème, vous pouvez créer une plage à virgule flottante en utilisant l'une des méthodes suivantes :
Utiliser la compréhension de liste
<code class="python">[x / 10.0 for x in range(5, 50, 15)]</code>
Cela initialise une liste avec des valeurs allant de 0,5 à 4,5 par incréments de 0,5.
Utilisation de Lambda et Map
<code class="python">map(lambda x: x / 10.0, range(5, 50, 15))</code>
Cela crée un objet map qui applique la fonction lambda x/10.0 à chaque valeur de la plage, ce qui donne une séquence similaire à celle de la compréhension de la liste.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!