Outline for January 16

Reading: Wentworth et al., §4.1–4.4
Due: Homework 1, due on January 18 at 11:55pm


  1. Functions [hello.py]
    1. What functions are
    2. Defining them
    3. Using them
  2. Quick look at using functions [quad.py]
    1. Passing values to functions
    2. Returning values from functions
  3. In more detail: passing values to functions [args.py]
    1. Formal parameters in subject definition
    2. Actual parameters (arguments)
    3. Matching arguments to formal parameters
    4. Local variables
  4. In more detail: how Python does function calls [quad.py]
    1. Caller suspends execution at point of call, remembers where it left off
    2. Formal parameters assigned values from actual parameters
    3. Execute function body
    4. Return control to where caller left off
  5. Refactoring code
    1. Compute the perimeter of a triangle [peri0.py]
    2. Collapse similar statements: make the distance between 2 points a function [peri1.py]
    3. Collapse similar statements: make the prompts a function [peri2.py]
    4. Refactor for clarity only: make the perimeter computation a function [peri3.py]
    5. Now add error checking [peri-c.py]
  6. Add error checking: “quad.py” done right [quad-c.py]


UC Davis seal
Matt Bishop
Office: 2209 Watershed Science
Phone: +1 (530) 752-8060
Email: [email protected]
You can also obtain a PDF version of this.
Version of January 15, 2019 at 6:36PM