[Tutor] What's the best way to model an unfair coin?
Steven D'Aprano
steve at pearwood.info
Sun Oct 24 14:17:13 CEST 2010
Richard D. Moores wrote:
> What's the best way to model an unfair coin?
Let probability of heads = p, where 0 <= p <= 1
Then probability of tails = 1-p.
if random.random() <= p: print("got heads")
else: print("got tails")
[...]
> That's the only way I can think of. But surely there's a better, more
> general solution. What if the probability I want is an irrational
> number, such as 1/e? Sure, I can calculate a fraction that's as close
> to that irrational number as I want, but..
Well, technically speaking all floats in Python are rational numbers,
since they're base-2 floating point numbers. But the difference between
(say) float pi and the true irrational number π is around about
0.0000000000000001, so close enough for most purposes.
--
Steven
More information about the Tutor
mailing list