[Python] come ottenere numeri dispari casuali in un intervallo dato
simone gabbriellini
simone.gabbriellini a gmail.com
Mar 5 Gen 2010 13:17:59 CET
grazie ancora a tutti dell'aiuto. il mio caso è, credo, semplice... l'idea è quella di piazzare dei punti in uno spazio 100x100.
l'unica regola è che punti diversi non abbiano le stesse coordinate... il fatto dei numeri dispari è legato a questioni di rappresentazione grafica..
la quesitone dell'efficienza è importantissima, dato che questo "posizionamento" viene fatto molte volte (ed i punti sono circa 2000).
grazie,
Simone
Il giorno 05/gen/2010, alle ore 12.09, Enrico Franchi ha scritto:
>
> On Jan 5, 2010, at 11:35 AM, Stefano Dal Pra wrote:
>
>> Propongo anche questa variante:
>>
>> import random
>> random.randint(0,9) | 1
>>
>> il | 1 setta a uno il bit meno significativo, rendendolo dispari se non lo e'.
>> E' importante che gli estremi passati a randint siano: pari quello inferiore
>> e dispari quello superiore, altrimenti i risultati non sarebbero tutti
>> equiprobabili.
>
> Perche' giocare con i bit quando Python offre direttamente costrutti con la semantica voluta?
>
> Per inciso, trasformare numeri pseudo-casuali e' in generale un'operazione piuttosto rischiosa, in quanto si puo' andare ad influire negativamente sulla qualita' della sequenza generata. Nell'esempio probabilmente non ci sono problemi, visto che il generatore sotto Python e' un Mersenne Twister di altissima qualita' e "dovrebbe" reggere bene ad una cosa del genere. *Ma* ci vorrebbe una qualche dimostrazione.
>
> Ora, nel caso probabilmente non interessa. Tuttavia *in genere* le sequenze pseudo-casuali sono bestie abbastanza delicate.
>
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
Maggiori informazioni sulla lista
Python