我试图将我的代码从头到尾运行100代,但是事实证明这非常困难。为了做到这一点,我正在使用:
if __name__ == "__main__":
classN = Class()
然后,我继续在for循环中依次调用每个函数:
for i in range(1,101):
classN.func1() #returns binary self.list1
classN.func2() #returns binary self.list2
classN.func3() #returns binary self.list either 1 or 2 / throws ValueError
classN.func4() #returns integer between 0-1
classN.func5() #return print statements summarizing whats happening at each step
我对编码还很陌生,并尝试了几种不同的方法。但是,如果我将范围增加到(1,2)以上,则会崩溃。我想包含一条条件语句,说func3()是否返回ValueError,打印错误并从头开始重新启动程序。我不确定如何正确执行此操作。当前,ValueError仅终止整个程序。我是否通过使用循环以正确的方式进行处理,或者有更好的方法来执行此操作?
另外,当未引发ValueError时,程序似乎仍在func3()处超出range(1,2)崩溃,因此不确定为什么要做的就是更改实例属性的值并返回它。我假设这是因为我如何在main中调用函数。
您可以只使用try-except块:
Check out the official docs for a deeper understanding of error and exception handling: https://docs.python.org/3/tutorial/errors.html