【问题标题】:How to automatically keep a script running? [duplicate]如何自动保持脚本运行? [复制]
【发布时间】:2019-08-08 17:27:25
【问题描述】:

我是编程新手(显然)并且正在寻找一个脚本,我可以在其中输入一个数字并让它自动除以 1440(一天中的分钟数)。我希望这能够一遍又一遍地重复。例如,我输入 400 并将其除以 1440。然后我希望能够在此之后直接输入另一个数字,而无需重新启动脚本。我该怎么办?任何人都可以引导我走向正确的方向。

num1 = int(input("Enter First Number: "))

num2 = int(1440)

result = num1 / num2

print(result)

【问题讨论】:

  • 是的,我尝试使用 while 循环,但无法弄清楚它们是如何工作的,我理解你的意思。不学习如何编码不是我的目标。我想学习,所以我不必问。

标签: python


【解决方案1】:

以下代码将永远运行您的程序,直到您强制它退出(使用 Ctrl-C):

while True:
    num = int(input("Enter First Number: "))
    print(num / 1440)

或者如 0x5453 所述,您可以使用“毒丸”。用户给出的用于终止循环的输入。

while True:
    response = input("Enter First Number: ")
    if response == ":q":
        break
    print(int(response) / 1440)

如果用户在程序中输入:q,它将跳出永远循环并结束你的程序。

【讨论】:

  • 太棒了,这非常适合我的需要。现在要弄清楚如何将其带入自己的小计算器应用程序中。我每天可能会为我的工作执行此功能 x/1440 500 次。我想我会让这对自己更容易。
  • 甜蜜!如果您发现它对关闭线程有益,请接受答案。另外,您还想添加什么?如果您愿意,我可以帮助您指明下一步的正确方向。
  • 答案应该被接受。感谢您的耐心我很紧张在这里发帖,因为我认为人们会因为我是新人而抨击我。所以我正在使用 PyCharm,我想知道我是否能够“弹出”这个脚本,这样我就可以在“应用程序”上运行它,而不必在 IDE 中运行它。我希望我解释得足够好!谢谢!
  • 启动终端(如果在 Mac/Linux 机器上)或 powershell(如果在 Windows 机器上)并运行你的程序可能比制作整个应用程序或其他任何东西要容易一些从那里。你熟悉导航到某些目录并使用 shell 运行 python 文件吗?
  • 不幸的是,我不是。我知道如何打开 powershell,但至于运行 .py 文件我不确定。我正在考虑使用 PySimpleGUI 来获取我的知识并使用它。但也想学习如何操作powershell。谢谢!你很有帮助;我很感激。
【解决方案2】:

两个最简单的解决方案是:

  1. 循环直到脚本被手动终止,例如使用 Ctrl-C
  2. 循环直到用户输入一个特殊值;在您的情况下,您可以停止任何不是数字的输入。

在这两种情况下,我建议您阅读loops

【讨论】:

  • 真棒会做。谢谢,如果问题非常基本,对不起。刚刚弄湿了我的脚。
【解决方案3】:
while number!=-1: #kill this by entering -1
    number = input("Enter number, press enter")
    print(int(number)/1440)

while True: #kill this version with Ctrl+C
    number = input("Enter number, press enter")
    print(int(number)/1440)

【讨论】:

    【解决方案4】:

    您可以使用 while 循环来执行此操作。 while 循环允许您在满足特定条件(== True)时运行一些代码。您还可以使此条件始终被评估为 True 允许循环永远运行。以下是你如何使用你的代码来做到这一点

    running = True
    while running:
        num1 = int(input("Enter First Number: "))
        num2 = int(1440)
        result = num1 / num2
    
        print(result)
    

    此代码将不断检查running == True 是否始终如此,因为循环中没有条件允许它变成其他任何东西。运行这段代码会一次又一次地运行你的代码,直到你按下Ctrl + c

    【讨论】:

      【解决方案5】:

      你可以设置一个循环来像这样运行......

      minutes_in_day = 1440
      user_input = None
      prompt = "Enter Minutes: "
      while not user_input == "exit":
          try:
              user_input = input(prompt)
              if user_input == "exit":
                  continue
              user_number = int(user_input)
              result = user_number/minutes_in_day
              print(result)
          except ValueError:
              print("Could not find number.")
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-10-30
        • 2014-12-13
        • 2013-05-06
        • 1970-01-01
        • 2011-09-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多