python 代码因错误退出后如何自动重新启动?

aur*_*ndb 3 python

以下不起作用。我有一个连接到网页的程序,但有时由于某些问题它无法连接我希望程序在错误发生后完全重新启动。想象一下主函数调用程序,这样的代码怎么写?

import numpy as np

def main():
    np.load('File.csv')

for i in range(1, 10):
    try:
        main()
    except Exception as e:
        print e
        print 'Restarting!'
        main()
Run Code Online (Sandbox Code Playgroud)

dro*_*n22 6

要在 python 中进行try/except相应的操作:

import numpy as np

def main():
    np.load('File.csv')

for i in range(1, 10):
    try:
        main()
    except Exception as e:
        print e
        print 'Restarting!'
        continue
    else:
        break
Run Code Online (Sandbox Code Playgroud)

对于简单的指令,这是可行的,但如果您的代码变得更复杂,将整个main()函数放入一个try/except块中可能会隐藏异常并使您的程序难以调试。因此,我建议在 python 之外处理重启,例如在 bash 脚本中。