File: class/Workbook/Exercises/Lab4/ex3.txt

% cat adders.py

def adder1(*args):
    print 'adder1',
    if type(args[0]) == type(0):    # integer?
         sum = 0                    # init to zero
    else:                           # else sequence:
         sum = args[0][:0]          # use empty slice of arg1
    for arg in args:
        sum = sum + arg
    return sum

def adder2(*args):
    print 'adder2',
    sum = args[0]               # init to arg1
    for next in args[1:]:
        sum = sum + next        # add items 2..N
    return sum

for func in (adder1, adder2):
    print func(2, 3, 4)
    print func('spam', 'eggs', 'toast')
    print func(['a', 'b'], ['c', 'd'], ['e', 'f'])

% python adders.py
adder1 9
adder1 spameggstoast
adder1 ['a', 'b', 'c', 'd', 'e', 'f']
adder2 9
adder2 spameggstoast
adder2 ['a', 'b', 'c', 'd', 'e', 'f']



[Home page] Books Code Blog Python Author Train Find ©M.Lutz