1 / 24

Python – Part 3

Python – Part 3. Functions. Function Calls . Function A named sequence of statements that performs a computation Name Sequence of statements “call” function by name >>> type(32) <type ‘int’> Function name – type Argument - 32. Function Calls. Commonly “takes” an argument

trygg
Download Presentation

Python – Part 3

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Python – Part 3 Functions

  2. Function Calls • Function • A named sequence of statements that performs a computation • Name • Sequence of statements • “call” function by name >>> type(32) <type ‘int’> • Function name – type • Argument - 32 Prepared by Department of Preparatory year

  3. Function Calls • Commonly “takes” an argument • “returns” a result • Result called the return value. Prepared by Department of Preparatory year

  4. Type conversion functions • Built-in functions that convert values from one type to another >>>int (’32’) 32 >>>int (‘Hello’) ValueError: invalid literal for int(): Hello >>>int (3.9999) 3 >>> int (-2.3) -2 Prepared by Department of Preparatory year

  5. Type conversion functions >>>float (32) 32.0 >>>float (‘3.14159’) 3.14159 >>> str (32) ’32’ >>> str (3.14159) ‘3.14159’ Prepared by Department of Preparatory year

  6. Math functions • Math module – provides most of the familiar mathematical functions • Module – a file that contains a collection of related functions Prepared by Department of Preparatory year

  7. Math Functions • Import the module before using it >>> import math Creates a module object named math >>> print math <module ‘math’ (build-in)> Prints some information about it Prepared by Department of Preparatory year

  8. Math functions >>> ratio = signal_power / noise_power >>> decibels = 10 * math.log10(ratio) #computes logarithm base 10 of ratio >>> radians = 0.7 >>> height = math.sin(radians) #computes sine of radians Prepared by Department of Preparatory year

  9. Math functions >>> degrees=45 >>> radians=degrees/360.0*2*math.pi >>>math.sin(radians) 0.707106781187 >>>math.sqrt(2)/2.0 0.707106781187 Prepared by Department of Preparatory year

  10. Composition • Can use functions to compose more complex expressions x=math.sin(degrees/360.0*2*math.pi) >>>minutes=hours*60 #right >>>hours*60=minutes #wrong! SyntaxError: can’t assign to operator Prepared by Department of Preparatory year

  11. Adding new functions • Function definition • Name of a new function • Sequence of statements that execute when function is called def print_lyrics(): print ("I'm a lumberjack, and I'm okay.“) print ("I sleep all night and I work all day.") Prepared by Department of Preparatory year

  12. Adding new functions • def – keyword for function definition • print_lyrics – name of the function • () – no arguments • Function name –same rules as for variables • Avoid using variable and function with same name Prepared by Department of Preparatory year

  13. Adding new functions • Header – first line of the function definition • Ends in colon • Body – the rest • Has to be indented (always four spaces) • Empty line to end the function (not necessary in a script) Prepared by Department of Preparatory year

  14. Adding new functions • Defining a function creates a variable with the same name >>> print_lyrics() def repeat_lyrics(): print_lyrics() print_lyrics() Prepared by Department of Preparatory year

  15. Parameters and Arguments • math.pow(2,3) • 8.0 • def print_twice(bruce): • print bruce • print bruce • Assigns the argument to a parameter named bruce Prepared by Department of Preparatory year

  16. Parameters and Arguments >>>print_twice (‘spam’) spam spam >>>print_twice(17) 17 17 Prepared by Department of Preparatory year

  17. Parameters and Arguments >>>print_twice(‘spam’*2) spam spam spam spam Argument evaluated before function is called Prepared by Department of Preparatory year

  18. Parameters and Arguments • Can also use a variable as an argument >>>number=17 >>>print_twice(number) 17 17 Prepared by Department of Preparatory year

  19. Local variables and parameters • Variable inside a function is local • Exists only inside the function • def cat_twice(part1, part2): • cat = part1 + part2 • print_twice(cat) • This function takes two arguments, concatenates them, and prints the result twice. Prepared by Department of Preparatory year

  20. Local variables (cont’d…) >>> line1 = 'Bing‘ >>> line2 = 'bang.' >>> cat_twice(line1, line2) Bing bang. Bing bang. Prepared by Department of Preparatory year

  21. Local variables (cont’d …) When cat_twice terminates, the variable cat is destroyed. If we try to print it, we get an exception: • >>> print cat NameError: name 'cat' is not defined Prepared by Department of Preparatory year

  22. Void functions • print_twice • Perform and action but does not return a value • If function returns value, almost always use it as part of an expression: • x = math.cos(radians) • golden = (math.sqrt(5) + 1) / 2 Prepared by Department of Preparatory year

  23. Void functions • >>> result = print_twice('Bing') • Bing • Bing • >>> print result • None Prepared by Department of Preparatory year

  24. Part 3 End

More Related