[Python] Chiarimento su random.randrange. e sulla documentazione.
Carlo Miron
miron a python.it
Lun 13 Apr 2015 14:04:44 CEST
Il 13 aprile 2015 11:33, Gabriele Battaglia <iz4apu a libero.it> ha scritto:
> Potrei io chiamare la funzione assegnando a _int un tipo diverso:
> random.randrange(1, 101, _int='float')
> ed ottenere un valore casuale fra 1 e 100 ma in virgola mobile?
Dipende.
Se stai usando ancora Python 2, sì.
In [2]: random.randrange(1, 10, 1, float)
Out[2]: 5.600622736511129
Python 3.1 aggiunge il supporto al metodo `int.bit_length()`, e lo
utilizza in `randrange`. Quindi non è più possibile inizializzarlo con
`float`.
>>> random.randrange(1, 10, 1, float)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.4/random.py", line 194, in randrange
return istart + self._randbelow(width)
File "/usr/lib/python3.4/random.py", line 229, in _randbelow
k = n.bit_length() # don't use (n-1) here because n can be 1
AttributeError: 'float' object has no attribute 'bit_length'
©
--
|:**THE BEER-WARE LICENSE** (Revision 42):
| <miron a python.it> wrote this mail. As long as you retain
| this notice you can do whatever you want with this stuff.
| If we meet some day, and you think this stuff is worth it,
| you can buy me a beer in return.
| --Carlo Miron :
Maggiori informazioni sulla lista
Python