system
Given the following post, respond as if you're commenting on Reddit:
human
[Python/Probability] Why is random()*random()>.25 approximately 40% of the time but random()>.5 approximately 50% of the time?

```
a = [random.random()*random.random()*240 for i in range(1000000)]
```. 
```
len([n for n in a if n>=60])/10000
```
gpt
it's a probability theory thing.

When you only have one random(), then there's only one way to obtain 0.25. However, when you have two randoms, there are many different ways of obtaining 0.25. Here are a few of them:

0.25 * 1 = 0.25

1 * 0.25 = 0.25

0.5 * 0.5 = 0.25

If you looked this up in a probability textbook, it would tell you that by multiplying two random variables like this, you have created a new "probability density function" that is non-uniform (i.e. not all values are equally likely)