问:“ UnboundLocalError”:分配前已引用局部变量“ exitErr”

我想在Spyder IDE中使用PDE Solver Fipy,并尝试根据官方安装指南进行安装: 现在建议在使用该软件包之前运行fipy.test(),并出现以下错误。

File "C:\Users\Me\AppData\Roaming\Python\Python27\site-packages\fipy\tests\test.py",line 263,in run_tests
    raise exitErr

UnboundLocalError: local variable 'exitErr' referenced before assignment

在这种情况下,我不明白这意味着什么,这是此错误所指的代码:

    try:
        unittest.main(
            None,None,[unittest.__file__]+self.test_args,testLoader = loader_class()
            )
    except SystemExit as exitErr:
        # unittest.main(...,exit=...) not available until Python 2.7
        from fipy.tests.doctestPlus import report_skips
        report_skips()
        if self.timetests is not None:
            pass
        else:
            raise

    if "legacy" in printoptions:
        numerix.set_printoptions(legacy=printoptions["legacy"])

    if self.timetests is not None:
        from fipy.tests.doctestPlus import _DocTestTimes
        import numpy
        _DocTestTimes = numpy.rec.fromrecords(_DocTestTimes,formats='f8,S255',names='time,test')
        _DocTestTimes.sort(order=('time','test'))
        numpy.savetxt(self.timetests,_DocTestTimes[::-1],fmt="%8.4f\t%s")

    raise exitErr
wqh467212692 回答:问:“ UnboundLocalError”:分配前已引用局部变量“ exitErr”

感谢您举报。我提出了一个问题。

我相信您可以通过将fipy.tests.test.test.run_tests()中的相关代码更改为以下内容来解决此错误:

exitErr = None
try:
   ...
except SystemExit,exitErr:
  ...

...

if exitErr is not None:
   raise exitErr

但是我需要做一些测试。我实际上无法触发您看到的错误,但是您确定的我们的代码肯定是错误的。

本文链接:https://www.f2er.com/3116602.html

大家都在问