def walk(top, func, arg):
    try:
        names = os.listdir(top)
    except os.error:
        return
    func(arg, top, names)
    for name in names:
        name = join(top, name)
        if isdir(name) and not islink(name):
            walk(name, func, arg)
Note that this will only filter out syntax mistakes in emailaddresses.
dataset/ETHPy150Open azoft-dev-team/imagrium/env/Lib/javapath.py/walk--crossover with--dataset/ETHPy150Open kootenpv/yagmail/yagmail/validate.py/validate_email_with_regex