I saw there was a __format__
method but help(int.__format__
) doesn't provide any help.
I also know you're not suppose to call a __method__
directly. When is this method called? Which is its argument?
It's used for Py3k's new string formatting scheme.
You can find more info here:
http://docs.python.org/whatsnew/2.6.html#pep-3101-advanced-string-formatting
You are right that it isn't called directly. It's called by str.format
or the new format
builtin.
It's used when you pass an integer to the format() function. The details elude me, as I can't seem to get it to tell me what exactly the argument is. (Edit: see lost-theory's link)
Oh, and it only works when the integer is the only argument. If you pass a tuple to format, then the tuple.__format__ function is called, and the int.__str__ or something.
'{0}'.format(4)
str(4.__format__(format_spec=''))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With