在循环中运行.py文件

时间:2016-03-14 21:35:02

标签: python python-2.7 while-loop raspberry-pi2 pause

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

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

我确信这是一个非常简单的问题,但我无法弄清楚这一点。 我还想在最后添加,我必须让它无限运行,让它运行其他一些东西。

2 个答案:

答案 0 :(得分:3)

您的代码无效的原因有几个:

  1. 不正确的缩进(这可能就是您将其复制到StackOverflow上的方式)。
  2. 使用os而不导入它。
  3. 不使用字符串的引号。
  4. 误用open功能; open打开一个用于阅读和/或写作的文件。要执行文件,您可能希望使用os.system
  5. 这是一个应该有效的版本:

    import os
    
    i = 0
    while i < 10:
        os.pause(10)
        os.system("home/Tyler/desktop/test.py")
        i += 1
    

答案 1 :(得分: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