Calls

A call calls a callable object (e.g. a function) with a possibly empty series of arguments: callable
call:           primary "(" [condition_list] ")"
The primary must evaluate to a callable object (user-defined functions, built-in functions, methods of built-in objects, class objects, and methods of class instances are callable). If it is a class, the argument list must be empty; otherwise, the arguments are evaluated. A call always returns some value, possibly None, unless it raises an exception. How this value is computed depends on the type of the callable object. If it is:
a user-defined function:
the code block for the function is executed, passing it the argument list. The first thing the code block will do is bind the formal parameters to the arguments; this is described in section [*]. When the code block executes a return statement, this specifies the return value of the function call. functioncall user-definedfunctioncall user-defined function function
a built-in function or method:
the result is up to the interpreter; see the library reference manual for the descriptions of built-in functions and methods. functioncall built-in functioncall methodcall built-in methodcall built-in method built-in function method function
a class object:
a new instance of that class is returned. class class objectcall
a class instance method:
the corresponding user-defined function is called, with an argument list that is one longer than the argument list of the call: the instance becomes the first argument. class instance instance instancecall class instancecall