def processor1(obj): """Require: text; yield firstchar""" obj['firstchar'] = obj.text[:1] return obj def processor2(obj): """Require: firstchar, text2; yield concat""" obj['concat'] = obj.firstchar + obj.text2 return obj procs = [ processor1, processor2 ] obj = { text: "Kr", text2: " 233..." } for proc in procs: proc(obj) print obj