(assignedto the names in the function' headertimes( arguments in parentheses this expression passes two arguments to times as mentioned previouslyarguments are passed by assignmentso in this case the name in the function header is assigned the value is assigned the value and the function' body is run for this functionthe body is just return statement that sends back the result as the value of the call expression the returned object was printed here interactively (as in most languages is in python)but if we needed to use it later we could instead assign it to variable for examplex times( save the result object nowwatch what happens when the function is called third timewith very different kinds of objects passed intimes('ni' 'ninininifunctions are "typelessthis timeour function means something completely different (monty python reference again intendedin this third calla string and an integer are passed to and yinstead of two numbers recall that works on both numbers and sequencesbecause we never declare the types of variablesargumentsor return values in pythonwe can use times to either multiply numbers or repeat sequences in other wordswhat our times function means and does depends on what we pass into it this is core idea in python (and perhaps the key to using the language well)which merits bit of expansion here polymorphism in python as we just sawthe very meaning of the expression in our simple times function depends completely upon the kinds of objects that and are--thusthe same function can perform multiplication in one instance and repetition in another python leaves it up to the objects to do something reasonable for the syntax reallyis just dispatch mechanism that routes control to the objects being processed this sort of type-dependent behavior is known as polymorphisma term we first met in that essentially means that the meaning of an operation depends on the objects being operated upon because it' dynamically typed languagepolymorphism runs rampant in python in factevery operation is polymorphic operation in pythonprintingindexingthe operatorand much more this is deliberateand it accounts for much of the language' conciseness and flexibility single functionfor instancecan generally be applied to whole category of object first exampledefinitions and calls