当前位置:  开发笔记 > 编程语言 > 正文

从另一个脚本运行python脚本永远重复

如何解决《从另一个脚本运行python脚本永远重复》经验,为你挑选了1个好方法。

我在python中从第一个脚本运行第二个脚本时遇到问题.为了简化我正在做的事情,以下代码说明了我提交的内容

file1.py:

from os import system
x = 1
system('python file2.py')

file2.py:

from file1 import x
print x

麻烦的是当我运行file1.py x时会永远打印直到被打断.有什么我做错了吗?



1> zvone..:

from file1 import x导入整个文件1.导入时,会对所有内容进行评估,包括system('python file2.py').

您可以通过这种方式阻止递归:

if __name__ == "__main__":
    system('python file2.py')

这将解决您当前的问题,但是,它似乎没有做任何有用的事情.

您应该选择以下两个选项之一:

    如果file2有权访问file1,则system完全删除该调用,直接执行file2.

    如果file2无权访问file1,并且您必须从file1启动file2进程,那么只需通过命令行将参数传递给它,不要从file2导入file1.

    system('python file2.py %s' % x)

(或者,更好一点,使用subprocess.call(['python', 'file2.py', x]))

在file2中,您可以访问以下值x:

x = sys.argv[1]

推荐阅读
罗文彬2502852027
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有