如何在 python 文件完成后 运行 另一个 python 文件

How to run another python file when a python file is finished

例如,我有两个 python 文件 test1.py 和 test2.py。首先,test1.py 将 运行。当 test1.py 完成时,我希望 test2.py 成为 运行。

我想要两个 python 文件 运行 在不同的 shell 中。这意味着 test1.py 完成后应该关闭。

感谢所有帮助!谢谢!


我希望这个任务是某种调度程序任务。在 12:00 pm,执行 test1.py。 test1.py完成后,我想自动执行test2.py

假设有三个文件。 one.py 是您的任务一,two.py 是您的任务二,main.py 是调用其他两个任务的主文件。

你的代码可以是这样的。

one.py

import time

class One():
    print "Before sleep one"
    time.sleep(5)
    print "After sleep one"

two.py

import time

class Two():
    print "Before sleep two"
    time.sleep(5)
    print "After sleep two"

main.py

from one import One
from two import Two

One()
Two()

输出

python main.py
Before sleep one
After sleep one
Before sleep two
After sleep two

您可以使用关闭挂钩在第一个脚本完成后执行另一个脚本 atexit

atexit.register(lambda: execfile('other.py')) # pass function to execute other file

最简单的方法是在 shell 中执行此操作,而不是使用纯 python。只需 运行 python test1.py && python test2.pypython test1.py; python test2.py

如果 test1 失败,则带有 && 的不会 运行 test2.py;无论如何都会运行。