Python XRange vs. gamme

Python XRange vs. gamme
Jusqu'à la version Python 2.x, il y avait un total de deux méthodes sous-jacentes utilisées dans cette langue pour générer la liste des entiers dans une gamme fournie. Les deux méthodes sont répertoriées ci-dessous:

gamme ()
xRange ()

Pour aller de l'avant, avec la dernière version de Python (3 à l'avance), Range () a été retiré, et XRange () a ensuite été changé en gamme (). Maintenant dans Python 3, il n'y a qu'une seule fonction pour cette méthode, je.e., gamme (). Dans Python 3, la fonction Range () est juste une autre façon d'implémenter l'ancienne version de XRange () de Python 2.X. Ici, nous raconterons les deux.

XRange ()

Le xRange () est utilisé pour créer une séquence de nombres comme la fonction Range ().

Syntaxe

La syntaxe utilisée pour définir XRange () est:

XRange (démarrage, fin, étape)

La fonction est utilisée pour définir la plage de nombres à partir de (est incluse) jusqu'à la fin (n'est pas incluse).

Paramètres

Voici la liste des paramètres requis:

Démarrer: position de démarrage de la séquence numérique
Fin: position finale de la séquence numérique
Étape: la distinction entre deux nombres consécutifs de la série.

Exemples

Dans l'exemple suivant, nous vérifierons les moyens de définir XRange.

Ici, nous spécifierons la position finale uniquement.

Ainsi, la valeur finale est définie comme 5, puis nous obtenons la position finale imprimée, comme indiqué ci-dessous:

Maintenant, nous verrons la méthode d'appel de la plage, la syntaxe à l'appel sera:

>>> x = xRange (fin)

Ensuite, nous allons le faire imprimer.

Nous obtiendrons la plage de la sortie, comme indiqué ci-dessus.

Maintenant, nous allons définir à la fois les points de départ et les points de terminaison. Ici, le point de départ est 2, et le point de fin est 5. Nous avons ensuite imprimé les positions de démarrage et de fin, comme indiqué ci-dessous:

Après cela, nous créerons une séquence des nombres à partir de nos points de départ et de fin, je.e., 2 à 5.

>>> y = xRange (start, fin)

Enfin, nous allons vérifier la méthode pour définir le point de départ, l'étape et le point de fin. Une fois que nous avons défini les trois paramètres; Nous les appellerons similaires à la méthode ci-dessous:

Maintenant, pour appeler le XRange pour ces trois paramètres, nous utiliserons la syntaxe suivante:

>>> z = xRange (démarrage, étape, fin)

Gamme ()

Range () est utilisé pour créer une liste et est une fonction plus rapide pour plusieurs itérations.

Syntaxe

La syntaxe suivante est utilisée:

>>> gamme (démarrage, fin, étape)

Exemples

Pour le premier cas, nous définirons la valeur finale. La syntaxe utilisée pour cela est:

>>> gamme (fin)

Ainsi, dans l'exemple ci-dessous, nous utiliserons 3 comme valeur finale de la plage. Lorsque nous l'obtenons imprimé, il renvoie les valeurs, à l'exclusion de la valeur finale.

Dans l'exemple suivant, nous utilisons l'exemple de décrire le point de début et de fin. La valeur commencera à partir de 1 et se terminera à 10 (en la excluant). Le point de départ est inclus, mais le point de fin est omis. La syntaxe est similaire à celle donnée ci-dessous:

>>> gamme (début, fin)

Ainsi, nous définissons le point de départ puis le point final, qui est respectivement de 1 et 10.

Maintenant, dans l'exemple suivant, nous aurons la fonction de pas. La fonction qui définit l'écart entre deux points dans la séquence. La valeur commencera à partir de 0 et se terminera à 10 (en l'excluant). La syntaxe utilisée est donnée ci-dessous:

>>> gamme (démarrage, étape, fin)

L'exemple est donné ci-dessous, où 2 est la valeur de pas.

Avantages

gamme ()

C'est plus rapide si les itérations doivent être faites plusieurs fois. range () n'a que les valeurs d'objets entiers en temps réel. En termes de mémoire, il ne s'exécute pas bien.

xRange ()

Il doit recréer l'objet entier à chaque fois. xRange () n'est pas car il ne prend pas en charge les tranches et la liste des méthodes. xRange () prend la même quantité de mémoire. Ainsi, en ce qui concerne les performances, surtout lorsque les utilisateurs itérent sur une valeur de plage plus grande, XRange () fonctionne beaucoup mieux.

Similitudes entre Python 2 et Python 3 Range et XRange

XRange de Python 2 a une représentation descriptive sous la forme de la chaîne, qui est très similaire à la valeur de l'objet de la plage de Python 3.

La valeur de xRange () dans Python 2 est itérable, il en va de même de Rang () dans Python 3.

xRange () et Range () ont tous deux des valeurs de point, de fin et de point de départ. Dans les deux cas, l'étape est un champ facultatif, il en va de même pour la valeur de démarrage.

À la fois XRange de la longueur de support Python 2 et 3 qui peut être indexé dans l'ordre avant ou inversé. Voici un exemple de la même chose:

Dissemblances entre range () et xRange ()

Puisque XRange () évalue uniquement l'objet générateur avec les valeurs nécessaires à l'évaluation paresseuse, il est plus rapide à mettre en œuvre sur la plage (). range () aide à retourner la liste et a tous les objets qui peuvent être utilisés, tandis que XRange () renvoie les objets associés à une liste et ne peut pas leur être appliqués afin que nous puissions le compter comme un inconvénient.

La variable utilisée dans la plage () stocke la valeur de la plage et prend donc beaucoup de mémoire par rapport à xRange () qui ne prend qu'une partie de la mémoire en raison des variables. range () renvoie un objet Range alors que XRange () renvoie un objet générateur.

La fonction de plage (1, 7, 2) renvoie la sortie [1, 3, 5] et l'entrée XRange (1, 7, 2) produira la sortie [1, 3, 5]. C'est ainsi que nous pouvons supposer qu'ils sont similaires dans le modèle.

Conclusion

range () et xRange () ont tous deux des caractéristiques différentes, comme discuté ci-dessus. Toutes les comparaisons mentionnées dans ce tutoriel, ainsi que les exemples, seront utiles pour que les lecteurs choisissent mieux leur méthode préférée en fonction de leurs exigences.