By definition, all attributes of a class that are function objects define corresponding methods of its instances.
根据定义,所有类的属性是函数对象的,定义了对应的实例的方法。
https://docs.python.org/3.7/tutorial/classes.html#instance-objects
In general, calling a method with a list of n arguments is equivalent to calling the corresponding function with an argument list that is created by inserting the method’s instance object before the first argument.
通常来说,调用n个参数的实例方法,相当于调用对应的类函数,且类函数的参数是n个参数前面再加一个实例对象。
https://docs.python.org/3.7/tutorial/classes.html#method-objects
If you still don’t understand how methods work, a look at the implementation can perhaps clarify matters. When a non-data attribute of an instance is referenced, the instance’s class is searched. If the name denotes a valid class attribute that is a function object, a method object is created by packing (pointers to) the instance object and the function object just found together in an abstract object: this is the method object. When the method object is called with an argument list, a new argument list is constructed from the instance object and the argument list, and the function object is called with this new argument list.