Maison >développement back-end >Tutoriel Python >Comment puis-je générer une plage avec des valeurs décimales en Python ?
Utilisation de valeurs décimales dans range()
La fonction range() de Python permet d'incrémenter les valeurs dans une plage spécifiée. Cependant, lorsque vous tentez d'utiliser une valeur de pas décimal, une erreur se produit car elle ne peut pas être nulle.
Pour surmonter cette limitation, il est recommandé de spécifier la valeur de pas comme le nombre de points à générer dans la plage. . La bibliothèque NumPy fournit la fonction linspace qui prend un certain nombre de points et une valeur de point final facultative. Par exemple :
import numpy as np np.linspace(0, 1, 11) # returns [0, 0.1, 0.2, ..., 1] np.linspace(0, 1, 10, endpoint=False) # returns [0, 0.1, 0.2, ..., 0.9]
Si l'utilisation d'une valeur de pas à virgule flottante est nécessaire, numpy.arange peut être utilisée :
np.arange(0.0, 1.0, 0.1) # returns [0, 0.1, 0.2, ..., 0.9]
Cependant, une erreur d'arrondi à virgule flottante peut provoquer un comportement inattendu :
np.arange(1, 1.3, 0.1) # returns [1, 1.1, 1.2, 1.3] (incorrect due to rounding error)
Par conséquent, utiliser la fonction linspace de NumPy ou spécifier le nombre de points est préférable pour générer des plages avec pas décimal valeurs.
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!