(yield) wc = wc + 1 except GeneratorExit: print "Word Count: ", wc pass def match(pattern, counter): print('Looking for ' + pattern) try: while True: s = (yield) if pattern in s: counter.send(None) except GeneratorExit: counter.close() print("Done") def parse(file, matcher): f = open('sampleset.txt', 'r') for line in f.readlines(): for word in line.split(' '): matcher.send(word) matcher.close()