根据Python计划中上一个作业的值运行作业
嘿,伙计们,我正在试着制作一个闹钟,根据上下班时间调整时间。 我的代码在警报时间前一小时检查通勤时间,然后按通勤时间重新调整警报。 我面临的问题是,我不知道如何返回alarmTime的更新值,该值将用于根据Job1中更新的alarmTime安排另一个作业 我已经尝试将alarmTime设置为全局,因此我不必返回值,但它没有帮助。 我该怎么办? 提前谢谢根据Python计划中上一个作业的值运行作业,python,jobs,schedule,Python,Jobs,Schedule,嘿,伙计们,我正在试着制作一个闹钟,根据上下班时间调整时间。 我的代码在警报时间前一小时检查通勤时间,然后按通勤时间重新调整警报。 我面临的问题是,我不知道如何返回alarmTime的更新值,该值将用于根据Job1中更新的alarmTime安排另一个作业 我已经尝试将alarmTime设置为全局,因此我不必返回值,但它没有帮助。 我该怎么办? 提前谢谢 def job1(alarmTime,approxTime): updatedTime=getApproxT1() #check for
def job1(alarmTime,approxTime):
updatedTime=getApproxT1() #check for update one hour before alarm
xmins=timediff(approxTime,updatedTime) #a function that finds out time diff
if xmins > 0:
alarmTime = alarmTime-timedelta(minutes=-xmins)
elif xmins < 0:
alarmTime = alarmTime+timedelta(minutes=-xmins)
else:
print("no change")
print(alarmTime)
schedule.every().day.at("08:00").do(job1,alarmTime,approxtime)
while True:
schedule.run_pending()
time.sleep(1)
def job1(报警时间,近似时间):
UpdateTime=getApproxT1()#在报警前一小时检查更新
xmins=timediff(approxTime,updatetime)#一个查找时间差的函数
如果xmins>0:
alarmTime=alarmTime时间增量(分钟=-xmins)
elif xmins<0:
alarmTime=alarmTime+timedelta(分钟=-xmins)
其他:
打印(“无更改”)
打印(报警时间)
计划.every().day.at(“08:00”).do(作业1,报警时间,近似时间)
尽管如此:
schedule.run_pending()
时间。睡眠(1)
我推荐一个,或者,如果您认为事情会变得非常复杂,推荐一种发布/订阅(pubsub)库
与其返回消息,不如让您的第二个任务订阅或收听您的第一个警报将广播的操作/发布事件,让相关警报知道是时候继续了。我建议您使用一个,或者,如果您希望事情变得非常复杂,可以使用某种发布/订阅(pubsub)库
与其返回消息,不如让您的第二个任务订阅或收听第一个警报将广播的操作/发布事件,让相关警报知道是时候继续了。使用类?您还可以标记可以取消的作业。然后,您可以在不同的时间添加新作业。是的,但是如何从第一个作业中获取返回值?我的第二个作业将根据我从第一个作业中获取的时间值触发。您不需要获取返回值。您可以在functionLate回复中重新安排函数,但请尝试以下操作:。我想这应该行得通。用一节课?您还可以标记可以取消的作业。然后,您可以在不同的时间添加新作业。是的,但是如何从第一个作业中获取返回值?我的第二个作业将根据我从第一个作业中获取的时间值触发。您不需要获取返回值。您可以在functionLate回复中重新安排函数,但请尝试以下操作:。我认为这应该行得通。