Default and flexible arguments

Introduction to Functions in Python

Hugo Bowne-Anderson

Instructor

You'll learn:

  • Writing functions with default arguments

  • Using flexible arguments

    • Pass any number of arguments to a functions
Introduction to Functions in Python

Add a default argument

def power(number, pow=1):
   """Raise number to the power of pow."""
   new_value = number ** pow
   return new_value

power(9, 2)
81
power(9, 1)
9
power(9)
9
Introduction to Functions in Python

Flexible arguments: *args (1)

def add_all(*args):
    """Sum all values in *args together."""

    # Initialize sum
    sum_all = 0

    # Accumulate the sum
    for num in args:
        sum_all += num

    return sum_all
Introduction to Functions in Python

Flexible arguments: *args (2)

add_all(1)
1
add_all(1, 2)
3
add_all(5, 10, 15, 20)
50
Introduction to Functions in Python

Flexible arguments: **kwargs

print_all(name="Hugo Bowne-Anderson", employer="DataCamp")
name: Hugo Bowne-Anderson
employer: DataCamp
Introduction to Functions in Python

Flexible arguments: **kwargs

def print_all(**kwargs):
    """Print out key-value pairs in **kwargs."""

    # Print out the key-value pairs
    for key, value in kwargs.items():
        print(key + ": " + value)
print_all(name="dumbledore", job="headmaster")
job: headmaster
name: dumbledore
Introduction to Functions in Python

Let's practice!

Introduction to Functions in Python

Preparing Video For Download...