所以今天这让我感到很困惑。我把它扔给你们。
我正在
TypeError: exceptions must be old-style classes or derived from BaseException, not NoneType
即使我只是单独使用raise
或使用Exception()
这是整个追溯,这有助于它。我很沮丧...
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
/home/gus/py274/lib/python2.7/site-packages/IPython/utils/py3compat.pyc in execfile(fname, *where)
176 else:
177 filename = fname
--> 178 __builtin__.execfile(filename, *where)
/home/gus/Dropbox/repos/git/blacktie/src/blacktie/scripts/blacktie_pipeline.py in <module>()
233
234 if __name__ == "__main__":
--> 235 main()
/home/gus/Dropbox/repos/git/blacktie/src/blacktie/scripts/blacktie_pipeline.py in main()
203 # Prep cuffmerge call
204 ##ipdb.set_trace()
--> 205 cuffmerge_call = CuffmergeCall(yargs,email_info,run_id,run_logs,conditions=experiment,mode=args.mode)
206 cuffmerge_call.execute()
207
/home/gus/Dropbox/repos/git/blacktie/src/blacktie/utils/calls.pyc in __init__(self, yargs, email_info, run_id, run_logs, conditions, mode)
627
628 self.prog_yargs = self.yargs.cuffmerge_options
--> 629 self.set_call_id()
630 self.init_log_file()
631 self.out_dir = self.get_out_dir()
/home/gus/Dropbox/repos/git/blacktie/src/blacktie/utils/calls.pyc in set_call_id(self)
116 self.call_id = call_id
117 else:
--> 118 raise Exception()
119
120 def notify_start_of_call(self):
TypeError: exceptions must be old-style classes or derived from BaseException, not NoneType
答案 0 :(得分:1)
好吧我好像发现问题不在我自己的代码本身。我一直在Ipython中运行脚本:因此是顶级跟踪地址。
我决定从终端运行它,并按预期引发异常。
我自己回答了这个问题,尽管我仍然不知道为什么Ipython会导致这种情况发生,因为这似乎是一个我应该问的单独问题。
希望这有助于有人看到这种奇怪的行为。