如何使Python程序自动重新启动

戴维·Eclipse

您如何使python程序自动重新启动?因此,假设有一个非常简单的程序,例如:

    var = input("Hi! I like cheese! Do you like cheese?").lower()        
    if var == "yes":
        print("That's awesome!")

现在,在Python Shell中,您将必须按“运行”按钮,然后按“运行模块(F5)”,或者仅按键盘上的“ f5”按钮。那是您第一次运行它。程序结束后,您将返回到“ Cheese.py”文件,然后按“ f5”再次运行该程序。大家和我在一起吗?好的,所以我的问题是,如何使程序自动重新启动而无需手动执行?

道格·R。

这取决于您所说的“重新启动自身”。如果只想连续执行相同的代码,则可以将其包装在一个函数中,然后从一个while True循环中调用它,例如:

>>> def like_cheese():
...     var = input("Hi! I like cheese! Do you like cheese?").lower()  # Corrected the call to `.lower`.
...     if var == "yes":
...         print("That's awesome!")
...
>>> while True:
...     like_cheese()
...
Hi! I like cheese! Do you like cheese?yes
That's awesome!
Hi! I like cheese! Do you like cheese?yes
That's awesome!

如果要实际重新启动脚本,则可以再次执行该脚本,通过执行以下操作将当前进程替换为新进程:

#! /bin/env python3
import os
import sys

def like_cheese():
    var = input("Hi! I like cheese! Do you like cheese?").lower()
    if var == "yes":
        print("That's awesome!")

if __name__ == '__main__':
    like_cheese()
    os.execv(__file__, sys.argv)  # Run a new iteration of the current script, providing any command line args from the current iteration.

这将连续重新运行脚本,提供从当前版本到新版本的命令行参数。这种方法的更详细的讨论可以在后“中找到重新开始一个python脚本在自身内”由彼得Zemek

本文注意的一项是:

如果您使用上述解决方案,请记住,这些exec*()函数会导致立即替换当前进程,而不会刷新打开的文件对象因此,如果在重新启动脚本时有任何打开的文件,则应在调用函数之前使用f.flush()刷新它们os.fsync(fd)exec*()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

关闭程序后如何自动重新启动程序

来自分类Dev

在python上input()之后自动重新启动程序

来自分类Dev

如何“重新启动”程序

来自分类Dev

重新启动Python程序

来自分类Dev

如何让我的程序在 Python 中循环并重新启动?

来自分类Dev

如果出现任何错误,如何自动重新打开/重新启动WPF应用程序?

来自分类Dev

如何从方法重新启动程序

来自分类Dev

如何重新启动程序(8086 TASM)

来自分类Dev

启动或重新启动android手机时,如何自动运行Python?

来自分类Dev

Java:如果触发了“其他”语句,如何自动重新启动控制台程序

来自分类Dev

如何在AWS Elastic-Beanstalk上自动重新启动节点应用程序

来自分类Dev

如果我的Java程序被杀死,如何自动重新启动它?

来自分类Dev

如何运行以预设的输入变量使终端程序在重新启动时自动运行

来自分类Dev

Python:在文件更改时自动重新启动WSGIServer + Bottle应用程序

来自分类Dev

重新启动后如何自动启动docker?

来自分类Dev

如何重新启动python中的“ for”循环?

来自分类Dev

发生错误退出后,如何自动重新启动python代码?

来自分类Dev

如何从python脚本重新启动计算机,并使脚本从停止处自动继续?

来自分类Dev

Qt应用程序崩溃时如何在同一程序中自动重新启动?

来自分类Dev

Qt应用程序崩溃时如何在同一程序中自动重新启动?

来自分类Dev

如何按ID自动重新启动列增量?

来自分类Dev

如何自动重新启动Julia中的长期工作

来自分类Dev

每次重新启动后如何自动运行命令

来自分类Dev

如何自动执行Excel的强制关闭,然后重新启动?

来自分类Dev

自动更新后如何阻止Windows重新启动?

来自分类Dev

如何在phpmyadmin中重新启动自动增量?

来自分类Dev

重新启动后如何使systemd服务自动运行?

来自分类Dev

在Linux中自动重新启动崩溃的进程(python)脚本

来自分类Dev

我如何知道docker守护程序重新启动后哪个docker将重新启动

Related 相关文章

  1. 1

    关闭程序后如何自动重新启动程序

  2. 2

    在python上input()之后自动重新启动程序

  3. 3

    如何“重新启动”程序

  4. 4

    重新启动Python程序

  5. 5

    如何让我的程序在 Python 中循环并重新启动?

  6. 6

    如果出现任何错误,如何自动重新打开/重新启动WPF应用程序?

  7. 7

    如何从方法重新启动程序

  8. 8

    如何重新启动程序(8086 TASM)

  9. 9

    启动或重新启动android手机时,如何自动运行Python?

  10. 10

    Java:如果触发了“其他”语句,如何自动重新启动控制台程序

  11. 11

    如何在AWS Elastic-Beanstalk上自动重新启动节点应用程序

  12. 12

    如果我的Java程序被杀死,如何自动重新启动它?

  13. 13

    如何运行以预设的输入变量使终端程序在重新启动时自动运行

  14. 14

    Python:在文件更改时自动重新启动WSGIServer + Bottle应用程序

  15. 15

    重新启动后如何自动启动docker?

  16. 16

    如何重新启动python中的“ for”循环?

  17. 17

    发生错误退出后,如何自动重新启动python代码?

  18. 18

    如何从python脚本重新启动计算机,并使脚本从停止处自动继续?

  19. 19

    Qt应用程序崩溃时如何在同一程序中自动重新启动?

  20. 20

    Qt应用程序崩溃时如何在同一程序中自动重新启动?

  21. 21

    如何按ID自动重新启动列增量?

  22. 22

    如何自动重新启动Julia中的长期工作

  23. 23

    每次重新启动后如何自动运行命令

  24. 24

    如何自动执行Excel的强制关闭,然后重新启动?

  25. 25

    自动更新后如何阻止Windows重新启动?

  26. 26

    如何在phpmyadmin中重新启动自动增量?

  27. 27

    重新启动后如何使systemd服务自动运行?

  28. 28

    在Linux中自动重新启动崩溃的进程(python)脚本

  29. 29

    我如何知道docker守护程序重新启动后哪个docker将重新启动

热门标签

归档