Yeah, an example that's a bit odd but not unthinkable might be, say, 7/3:

```
>>> Fraction.from_float(7.0 / 3.0)
Fraction(5254199565265579, 2251799813685248)
```

but

```
>>> fractions.Fraction.from_float(7.0 / 3.0).limit_denominator()
Fraction(7, 3)
```

is good enough. Reason being that with many floating point numbers with infinitely repeating digits (2.33333333~) the round off is in a very small decimal place, which leads to very large denominators.  1000000 is still sort of arbitrary but it seems well within reason to me for most small rational numbers.