fancy_print(text'hi 'style'bold 'justify'left 'background'black 'color'yellow 'as we can seethe order of the arguments does not matter when you use keyword arguments when defining the functionit would be good idea to give defaults for instancemost of the timethe caller would want left justificationa white backgroundetc using these values as defaults means the caller does not have to specify every single argument every time they call the function here is exampledef fancy_print(textcolor'black 'background'white 'style'normal 'justify'left ')function code goes here fancy_print'hi 'style'bold 'fancy_print'hi 'color'yellow 'background'black 'fancy_print'hi 'note we have actually seen default and keyword arguments before--the sepend and file arguments of the print function local variables let' say we have two functions like the ones below that each use variable idef func ()for in range( )print(idef func () = func (print(ia problem that could arise here is that when we call func we might mess up the value of in func in large program it would be nightmare trying to make sure that we don' repeat variable names in different functionsandfortunatelywe don' have to worry about this when variable is defined inside functionit is local to that functionwhich means it essentially does not exist outside that function this way each function can define its own variables and not have to worry about if those variable names are used in other functions global variables on the other handsometimes you actually do want the same variable to be available to multiple functions such variable is called global variable you have to be careful using global variablesespecially in larger programsbut few global variables used judiciously are fine in smaller programs here is short example