Presentation is loading. Please wait.

Presentation is loading. Please wait.

Functions Jay Summet.

Similar presentations


Presentation on theme: "Functions Jay Summet."— Presentation transcript:

1 Functions Jay Summet

2 output A function is a piece of code you can use over and over again
Functions input A function is a piece of code you can use over and over again Treat it like a black box You pass it (optional) values, it does some work, and it (optionally) returns values You “call it”,”invoke it”, or “use it” by using its name and parentheses The arguments you pass it go inside the parentheses output = function( input )‏ function output Aug

3 Using Simple Functions
You call a function by using it's identifier (name) followed by parenthesis. If the function takes arguments, you insert them inside the parenthesis. print( “Some Text” ) ‏ Aug

4 Writing Simple Functions
Defining functions Creates function Does not execute/run them Indenting indicates a “block” of code Call functions from top-level or other functions def sayHi(): print(“Hi there!”)‏ print(“Nice to meet you!”) sayHi()‏ Indent No Indention “Top Level” Aug

5 Format of a function definition
def function-name(): statement Aug

6 Writing Functions with Parameters
def sayHi(name): print( “Hi there”, name) print( “Nice to meet you!”) sayHi(“Jay”)‏ sayHi(“Bob”)‏ Aug

7 Parameters are Variables
When you pass values into functions as arguments, they get assigned to the variable names (parameters) declared in the definition line of the function. For example, when you call sayHi(“Jay”) The name variable is assigned (points to) the value “Jay” When the code in the function refers to the name variable, it evaluates to the string “Jay” So, when you call sayHi(“Jay”) and the sayHi function calls print(“Hi there”, name), it's the same as if it called print(“Hi there”, “Jay”) Aug

8 Format of a Function Definition with Parameters
def function-name(param0, param1, ...): statement function-name(arg0, arg1, ...)‏ Aug

9 Using Functions that Return Values
name = getName()‏ print( “Hello”, name) Aug

10 Composing Functions You can use the output (return value) of one function as the input (argument) to another function. sayHi( getName() ) In this example, the getName() function executes first (things inside parenthesis execute before things outside parenthesis)‏ The getName() function returns a name, which is then given to the sayHi() function as an argument. Aug

11 Writing Functions that Return Values
def area(radius): return 3.14 * radius**2 def circumference(diameter): return 3.14 * diameter print( “Area of a 3 ft circle”, area(3)‏ ) print( “Circumference”, circumference(2*3)‏ ) Aug

12 The return statement is used to return a value from a function
Return Statements The return statement is used to return a value from a function The return statement also affects the flow of execution Whenever the flow of execution hits a return statement it jumps back to the place where the function was called All functions have an implicit return statement that returns None at the end of the block of indented code, even if you do not specifically place one at the end of your function Aug

13 Functions with Local Variables
def area(radius): a = 3.14 * radius**2 return a def circumference(diameter): c = 3.14 * diameter return c print( “Area of a 3 ft circle”, area(3)‏ ) print( “Circumference”, circumference(2*3)‏ ) Aug

14 Variables in a Function are Local
Variables in a function are private Including the parameters Each function has its own variables Even when the names are the same Allows you to write functions independently without worrying about using the same name in multiple functions Aug

15 Different Variables - Same Name
def area(radius): a = 3.14 * radius**2 return a def circumference(radius): a = 3.14 * 2 * radius a = 20 print( “Area of a 3 ft circle”, area(3) )‏ print( “Circumference”, circumference(3)‏ ) print( a ) Aug

16 Writing Functions with Return Values
def function-name(list-of-params): statement return value output = function-name(list-of-params)‏ Aug

17 Passing variables to a functions
If you pass a variable to a function, the function gets the value that the variable is pointing at userInput = input(“Enter your Name”)‏ sayHi(userInput)‏ Aug

18 Functions in general # description of this function
# what it expects as input # what is provides as output def function (p0, p2, …, pn): statement return value z = function(a0, a2, …, an)‏ Aug

19 Where’s the Error? def area(a): a = 3.14 * radius**2 return a
print( “Area of a 3 ft circle”, area( 3‏ ) Aug

20 Not enough Parentheses!
def area(a): a = 3.14 * radius**2 return a print( “Area of a 3 ft circle”, area(3)‏ ) Aug

21 print( “Area of a 3 ft circle”, area(3)‏ )
Where’s the Error? def area( radius ): a = 3.14 * radius**2 return a print( “Area of a 3 ft circle”, area(3)‏ ) Aug

22 print( “Area of a 3 ft circle”, area(3)‏ )
No Indentation! def area(radius): a = 3.14 * radius**2 return a print( “Area of a 3 ft circle”, area(3)‏ ) Aug

23 print( “Area of a 3 ft circle”, area()‏ )
Where’s the Error? def area(radius): a = 3.14 * radius**2 return a print( “Area of a 3 ft circle”, area()‏ ) Aug

24 No argument to the function!
def area(radius): a = 3.14 * radius**2 return a print( “Area of a 3 ft circle”, area(3)‏ ) Aug

25 print( “Area of a 3 ft circle”, area(3)‏ )
Where's the Error? def area(radius): a = 3.14 * radius**2 print( “Area of a 3 ft circle”, area(3)‏ ) Aug

26 print( “Area of a 3 ft circle”, area(3)‏ )
No Return Value! def area(radius): a = 3.14 * radius**2 return a print( “Area of a 3 ft circle”, area(3)‏ ) Aug

27 print( “Area of a 3 ft circle”, a )
Where’s the Error? def area(radius): a = 3.14 * radius**2 return a area(3)‏ print( “Area of a 3 ft circle”, a ) Aug

28 Don't save the return value into Global variable a!
def area(radius): a = 3.14 * radius**2 return a a = area(3)‏ print( “Area of a 3 ft circle”, a ) Aug

29 Last Question - What’s the result?
def area(radius): a = 3.14 * radius**2 return a a = 16 v = area(3)‏ print( “Area of a 3 ft circle”, v ) print( “value of a”, a) Aug


Download ppt "Functions Jay Summet."

Similar presentations


Ads by Google