you define package of code that you can use over and over to perform the same task all you need to do is tell the computer to perform specific task by telling it which function to use the computer faithfully executes each instruction in the function absolutely every time you ask it to do so when you work with functionsthe code that needs services from the function is named the callerand it calls upon the function to perform tasks for it much of the information you see about functions refers to the caller the caller must supply information to the functionand the function returns information to the caller at one timecomputer programs didn' include the concept of code reusability as resultdevelopers had to keep reinventing the same code it didn' take long for someone to come up with the idea of functionsthoughand the concept has evolved over the years until functions have become quite flexible you can make functions do anything you want code reusability is necessary part of applications to reduce development time reduce programmer error increase application reliability allow entire groups to benefit from the work of one programmer make code easier to understand improve application efficiency in factfunctions do whole list of things for applications in the form of reusability as you work through the examples in this bookyou see how reusability makes your life significantly easier if not for reusabilityyou' still be programming by plugging and into the computer by hand defining function creating function doesn' require much work python tends to make things fast and easy for you the following steps show you the process of creating function that you can later access open python shell window you see the familiar python prompt type def hello()and press enter