我有几个脚本(名为one.py和two.py)使用execfile循环调用。 one.py(这是一个开始)有一些代码(初始化),我只想执行一次。
我想继续使用execfile ,如果可能的话
我怎么能实现这个目标?
#one.py
def initialize():
# initializing
initialize()
# do the main work
execfile('two.py')
----------------------------
#two.py
# do some work
execfile('one.py')
答案 0 :(得分:2)
为什么不创建第三个文件zero.py,它开始初始化然后执行然后执行循环的one.py.
case 3
另一方面,应该有更好的方法来运行你的代码然后这个execfile循环。
答案 1 :(得分:0)
也许你可以定义一个运行你的任务的类?
例如:
from itertools import cycle
class TaskRunner(object):
def __init__(self):
self.tasks = ('one.py', 'two.py')
# do some initializing
def run_continuously(self):
for filepath in cycle(self.tasks):
execfile(filepath)
# to run:
task_runner = TaskRunner()
tsak_runner.run()
----------------------------
#one.py
# do the main work (without initializing)
----------------------------
#two.py
# do some work
----------------------------