Ich schreibe ein Programm, das Benutzer zu festgelegten Zeiten begrüßen konnte. Und wenn der Benutzer innerhalb einer bestimmten Zeit nichts antwortet, sendet das Programm eine weitere Nachricht.Python - Nur die erste innere Funktion wurde ausgeführt
Momentan verwende ich eine äußere Funktion mit zwei inneren Funktionen, da ich die äußere in eine andere Hauptdatei importieren wollte. Aber wenn ich den äußeren Funktionstest() anrufe, wurde nur die erste innere Funktion weekends() ausgeführt.
Dies ist mein Code.
import schedule
import time
from threading import Thread
def test():
def weekends():
weekends_ans = None
def weekends_check():
time.sleep(20)
if weekends_ans!=None:
return
print('\nWhat about watching a movie?')
Thread(target=weekends_check).start()
weekends_ans=input('Whats your plan for weekends?')
def monday():
monday_ans = None
def monday_check():
time.sleep(20)
if monday_ans!=None:
return
print('\nHave fun next week!')
Thread(target=monday_check).start()
monday_ans=input('Monday again.')
schedule.every().friday.at('17:00').do(weekends)
schedule.every().sunday.at('17:00').do(monday)
while True:
schedule.run_pending()
time.sleep(1)
test()
Jeder könnte helfen?
Nebenbei bemerkt: Vergleichen Agains 'None' mit' wenn weekend_ans nicht anstelle der 'ist None' =' Operator – RunOrVeith
Danke, aber doen't es Arbeit .. –