在自身内重启代码

时间:2017-10-09 05:32:15

标签: python python-3.x telegram-bot restart

我必须在没有任何编码教育的情况下开始编码python。所以我的技能很惭愧。 我有telegram bot。有时它会崩溃,我不知道为什么,实际上它并不重要,但我需要在崩溃时让机器人重新启动,因为一些奇怪的数据丢失。所以请解释我如何添加while Truetry-except。请教我在哪里将这些结构放在我的代码中。所有代码都必须在try statement内,我是对的吗?对于愚蠢的问题我真的很抱歉,但我需要你的帮助。谢谢!

2 个答案:

答案 0 :(得分:2)

如果您正在使用linux,那么您可以编写一个独立的bash脚本,在崩溃的情况下重启python脚本并保持运行:

until foo.py; do
    echo "'foo.py' crashed with exit code $?.  Respawning.." >&2
    sleep 1
done

您需要在后台运行此bash脚本:

nohup ./bar.sh &

Source

答案 1 :(得分:-1)

离开please

您可以执行以下操作:

while (true):
    try:
        #your code here
    except:
       print "Caught an exception, discarding it."

请注意,这会捕获任何异常,这不是一个好主意。