I think I'm not using Try Except properly in this Python code
A couple things:


Instead of if job:, try if not job: ... continue .  This will allow the entire (large) content of that if-block to be outdented a level, making it a little more readable.
Instead of job_list = [ j for j in ... ]; use job_list = list( ... ).


Also, the logic in your failure code looks a bit suspect - you set subsequent jobs as 'failed' but nothing keeps them from being attempted again by the enclosing for loop.  I think you basically want a break at the end of the except block to exit the loop there, though that leaves the for loop still setting some potentially passed jobs as failed (consider the case when the first job passes but the second fails - the loop will set them all as failed).  So you might instead add a fail_the_rest = False flag just before the for job in joblist loop and then as the first line of the loop do if fail_the_rest: &lt;set failed&gt; continue and then change the except block to just set failure on that one job and then set fail_the_rest = True.  But that's all speculative due to a lack of understanding about how your job submission and pass/fails work.