运行 循环中的 .py 文件

Running a .py file in a loop

我目前正在尝试 运行 一个 .py 文件,但是在一个循环中。 只是为了测试我正在使用

I = 0
while I<10:
    os.pause(10)
    open(home/Tyler/desktop/test.py)
    I = I + 1

我确信这是一个非常简单的问题,但我想不通。 我还想在最后补充一点,我必须无限地制作这个 运行 并让它 运行 用于其他一些事情。

您的代码无法正常工作的原因有以下几个:

  1. 缩进不正确(尽管这可能只是您将其复制到 Whosebug 的方式)。
  2. 使用 os 而不导入它。
  3. 不对字符串使用引号。
  4. 误用open函数; open 打开文件进行读取 and/or 写入。要执行文件,您可能需要使用 os.system.

这是一个应该有效的版本:

import os

i = 0
while i < 10:
    os.pause(10)
    os.system("home/Tyler/desktop/test.py")
    i += 1
  • Python 对缩进敏感,您的代码缺少缩进 在 while 语句之后!

  • 运行 open 命令不会 运行 Python 脚本。你可以 在文档中阅读它的作用: https://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files

  • 这个堆栈溢出问题讲的是如何 运行 Python 那是 存储在另一个文件中 How can I make one python file run another?

    我建议将您想要 运行 的代码包装在一个函数中,例如

     def foo():
         print 'hello'
    

    然后将其保存在 foo.py 中。从您的主脚本中,您可以执行以下操作:

    import foo
    
    i = 0
    while i < 10:
        foo.foo()
        i += 1
    
  • 如果你想 运行 无限循环中的某些东西,你需要 while 循环的条件始终为真:

    while True:
        # do thing forever
    
  • 关于导入的注意事项: 如果 foo.py 文件与主文件位于同一目录中,我给出的示例将有效 Python 文件。如果不是,那么您应该在这里阅读如何创建 Python 模块 http://www.tutorialspoint.com/python/python_modules.htm