You are here

Optional parameters

8 September, 2015 - 10:43

We have seen built-in functions and methods that take a variable number of arguments. It is possible to write user-defined functions with optional arguments, too. For example, here is a function that prints the most common words in a histogram

def print_most_common(hist, num=10):t = most_common(hist)print 'The most common words are:'for freq, word in t[:num]:print word, '\t', freq

The first parameter is required; the second is optional. The default value of num is 10.

If you only provide one argument:


num gets the default value. If you provide two arguments:

print_most_common(hist, 20)

num gets the value of the argument instead. In other words, the optional argument overridesthe default value.

If a function has both required and optional parameters, all the required parameters have to come first, followed by the optional ones.