On 26.05.2014 21:00, Marko Rauhamaa wrote:
> Terry Reedy <tjre...@udel.edu>:
>> Part of the answer is Python's history. Up to about 2.1, most built-in
>> types did not have methods, though I know lists did. Ints and strings
>> did not, or chr and ord might have been int.chr() and str.ord(). (The
>> current string methods were originally functions in the string
>> module.)
> Ints still aren't quite like regular objects. For example:
>    >>> x = 500
>    >>> x.__str__ is x.__str__
>    False

Just like every other object:

>>> class Example(object): pass
>>> e = Example()
>>> e.__str__ is e.__str__

Python creates a new bound method object every time. A bound method
object is a callable object that keeps a strong reference to the
function, class and object. The bound method object adds the object as
first argument to the function (aka 'self').



Reply via email to