human
I wrote the below code

    from wordnet import _normalizePOS, _dictionaryFor
    pos = _normalizePOS(pos)
    fname = os.path.join(WNSEARCHDIR, ({NOUN: 'noun', VERB: 'verb', ADJECTIVE: 'adj', ADVERB: 'adv'}[pos] + '.exc'))
    excfile = open(fname)
    substitutions = MORPHOLOGICAL_SUBSTITUTIONS[pos]
    def trySubstitutions(trySubstitutions, form, substitutions, lookup=1, dictionary=_dictionaryFor(pos), excfile=excfile, collect=collect, collection=[]):
        import string
        exceptions = binarySearchFile(excfile, form)
        if exceptions:
            form = exceptions[(string.find(exceptions, '    ') + 1):(-1)]
        if (lookup and dictionary.has_key(form)):
            if collect:
                collection.append(form)
            else:
                return form
        elif substitutions:
            (old, new) = substitutions[0]
            substitutions = substitutions[1:]
            substitute = None
            if endsWith(form, old):
                substitute = (form[:(- len(old))] + new)
            form = (trySubstitutions(trySubstitutions, form, substitutions) or (substitute and trySubstitutions(trySubstitutions, substitute, substitutions)))
            return ((collect and collection) or form)
        elif collect:
            return collection
    return trySubstitutions(trySubstitutions, form, substitutions)

What's a good function header?
assistant
#Here's a good function header.

def morphy(form, pos='noun', collect=0):