I occasionally use Python string formatting. This can be done like so:

```
print('int: %i. Float: %f. String: %s' % (54, 34.434, 'some text'))

```

But, this can also be done like this:

```
print('int: %r. Float: %r. String: %r' % (54, 34.434, 'some text'))

```

As well as using %s:

```
print('int: %s. Float: %s. String: %s' % (54, 34.434, 'some text'))

```

My question is therefore: why would I ever use anything else than the %r or %s? The other options (%i, %f and %s) simply seem useless to me, so I'm just wondering why anybody would every use them?

[edit] Added the example with %s