def makeRequests(callable, args_list, callback=None, exc_callback=None):
 requests = []
 for item in args_list:
  if isinstance(item, tuple):
   requests.append(WorkRequest(callable, item[0], item[1], callback=callback, exc_callback=exc_callback))
  else:
   requests.append(WorkRequest(callable, [item], None, callback=callback, exc_callback=exc_callback))
 return requests

def makeRequests ( callable , args_list , callback = None , exc_callback = None ) : requests = [ ] for item in args_list : if isinstance ( item , tuple ) : requests . append ( WorkRequest ( callable , item [ 0 ] , item [ 1 ] , callback = callback , exc_callback = exc_callback ) ) else : requests . append ( WorkRequest ( callable , [ item ] , None , callback = callback , exc_callback = exc_callback ) ) return requests
create several work requests for same callable with different arguments .