【问题标题】:Why will this function not end its loop even when the conditions have been met?为什么即使满足条件,这个函数也不会结束它的循环?
【发布时间】:2020-09-10 07:15:38
【问题描述】:

我已经创建了这个脚本来在一天中的某个时间打开一个网站,但是当我尝试创建一个循环来检查它直到满足条件时,(在这种情况下,条件是时间是13:27),即使到了正确的时间,网站也打不开,但程序仍然在 IDLE 中运行。

import datetime
import webbrowser
x = datetime.datetime.now()
def website():
    if (x.hour) == 13:
        if (x.minute) == 27:
            webbrowser.open("https://www.google.com/", new = 2)
        else:
            sleep(10)
            website()
    else:
        website()

编辑:除了不止一次初始化 x 之外,我还意识到我实际上并没有调用函数 oops。

【问题讨论】:

    标签: python-3.x loops time


    【解决方案1】:

    变量x只初始化一次,函数调用时不更新。

    import datetime
    import webbrowser
    def website():
        x = datetime.datetime.now()
        if (x.hour) == 13:
            if (x.minute) == 27:
                webbrowser.open("https://www.google.com/", new = 2)
            else:
                sleep(10)
                website()
        else:
            website()
    

    【讨论】:

      猜你喜欢
      • 2020-12-24
      • 2016-03-14
      • 1970-01-01
      • 1970-01-01
      • 2012-02-21
      • 2013-04-08
      • 2021-08-07
      • 2020-04-15
      • 2021-11-25
      相关资源
      最近更新 更多