Attention à randint

Une note à laquelle j'étais accro avec le randint de Python. Il existe random.randint et numpy.random.randint comme fonctions qui renvoient des entiers aléatoires dans un certain intervalle, mais ce sont en fait des spécifications différentes.

Jetons un œil à la documentation. D'abord de random.randint

randint(self, a, b) method of random.Random instance Return random integer in range [a, b], including both end points.

Puis numpy.random.randint

randint(low, high=None, size=None)

Return random integers from low (inclusive) to high (exclusive).

Return random integers from the "discrete uniform" distribution in the "half-open" interval [low, high). If high is None (the default), then results are from [0, low).

En d'autres termes, random.randint (a, b) peut renvoyer un entier de a à b (y compris b), et numpy.random.randint (a, b) peut renvoyer un entier de a à b-1. Il y a une possibilité qu'il revienne.

Qu'est-ce que c'est que ça! déroutant!

Je pense que cette dernière est la spécification la plus naturelle. Par exemple, range (1,5) renvoie [1,2,3,4].

Ensuite, joyeux Halloween et bon piratage!

Recommended Posts

Attention à randint
25/03/2015 python> Commentaire sur plusieurs lignes> Attention au retrait
Attention à la valeur de retour de __len__
Attention aux variables globales en dehors de lambda_handler (datetime)
Points à garder à l'esprit lors de la migration avec Django
Choses à surveiller lors de l'utilisation d'arguments par défaut en Python
Points à prendre en compte lors de l'attribution d'un nom au routage dynamique dans nuxt.js
Points à surveiller lors de la création d'un environnement Python sur un Mac