Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python文件完成后运行另一个python文件_Python_Scheduled Tasks - Fatal编程技术网

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

如何在python文件完成后运行另一个python文件,python,scheduled-tasks,Python,Scheduled Tasks,例如,我有两个python文件test1.py和test2.py。首先,test1.py将运行。我希望test1.py完成后运行test2.py 我希望这两个python文件在不同的shell中运行。这意味着test1.py应该在完成时关闭 感谢所有的帮助!谢谢大家! 我希望此任务是某种调度程序任务。在下午12:00执行test1.py。在test1.py完成后,我想自动执行test2.py,因为有三个文件。one.py是任务1,two.py是任务2,main.py是调用其他两个任务的主文件

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

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

感谢所有的帮助!谢谢大家!



我希望此任务是某种调度程序任务。在下午12:00执行test1.py。在test1.py完成后,我想自动执行test2.py,因为有三个文件。one.py是任务1,two.py是任务2,main.py是调用其他两个任务的主文件

您可以使用类似这样的代码

one.py

import time

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

class Two():
    print "Before sleep two"
    time.sleep(5)
    print "After sleep two"
from one import One
from two import Two

One()
Two()
two.py

import time

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

class Two():
    print "Before sleep two"
    time.sleep(5)
    print "After sleep two"
from one import One
from two import Two

One()
Two()
main.py

import time

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

class Two():
    print "Before sleep two"
    time.sleep(5)
    print "After sleep two"
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

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

您可以使用类似这样的代码

one.py

import time

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

class Two():
    print "Before sleep two"
    time.sleep(5)
    print "After sleep two"
from one import One
from two import Two

One()
Two()
two.py

import time

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

class Two():
    print "Before sleep two"
    time.sleep(5)
    print "After sleep two"
from one import One
from two import Two

One()
Two()
main.py

import time

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

class Two():
    print "Before sleep two"
    time.sleep(5)
    print "After sleep two"
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

第一个脚本完成后,可以使用shutdownhook执行另一个脚本


第一个脚本完成后,可以使用shutdownhook执行另一个脚本


最简单的方法是在shell中完成,而不是使用纯python。只需运行
pythontest1.py&&pythontest2.py
pythontest1.py;python test2.py


如果test1失败而使用&&的则不会运行test2.py;无论如何都将运行这两个命令。

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



如果test1失败而使用&&的则不会运行test2.py;无论如何都将运行这两个测试。

不仅仅是
python test1.py和&python test2.py
?(或使用
而不是
&&
,如果第一个的返回代码不相关。)谢谢。但我希望这个任务是某种调度任务。在下午12:00执行test1.py。在test1.py完成后,我想自动执行test2.py。因此,将上述命令放在脚本中,由任务调度器执行?非常感谢!我想这会管用的!您可以尝试gearman api,检查它,而不仅仅是
python test1.py&&python test2.py
?(或使用
而不是
&&
,如果第一个的返回代码不相关。)谢谢。但我希望这个任务是某种调度任务。在下午12:00执行test1.py。在test1.py完成后,我想自动执行test2.py。因此,将上述命令放在脚本中,由任务调度器执行?非常感谢!我想这会管用的!您可以尝试gearman api,检查这是否错误,导入将在没有系统调用的情况下执行代码。如果它们在类中,则不会:)谢谢您的帮助。这就像在另一个文件中调用一个方法。在上面的例子中,我只是在一个类中调用它。您始终可以创建一个新方法并调用该方法。这是错误的,导入将在没有系统调用的情况下执行代码。如果它们在类中,则不会:)谢谢您的帮助。这就像在另一个文件中调用一个方法。在上面的例子中,我只是在一个类中调用它。您始终可以创建一个新方法并调用该方法。感谢您的帮助!我尝试了这个方法,但发现有
无法运行第二个python文件。不确定您的文件是什么情况,但在我这方面,两个文件都可以使用任一命令正常运行。感谢您的帮助!我尝试了这个方法,但发现有
无法运行第二个python文件。不确定您的文件是什么情况,但在我这方面,两个文件都可以使用任意一个命令正常运行。