Spaces:
Sleeping
Sleeping
from random import randint | |
import time | |
class UhOh(Exception): | |
pass | |
class Hmm: | |
def __init__(self): | |
self.value = randint(-100, 100) | |
def Yeah(self): | |
if self.value == 0: | |
return True | |
else: | |
raise UhOh() | |
def Okay(): | |
while True: | |
yield Hmm() | |
def keep_trying(go, first_try=True): | |
maybe = next(go) | |
try: | |
if maybe.Yeah(): | |
return maybe.value | |
except UhOh: | |
if first_try: | |
print("Working...") | |
print("Please wait patiently...") | |
time.sleep(0.1) | |
return keep_trying(go, first_try=False) | |
if __name__ == "__main__": | |
go = Okay() | |
print(f"{keep_trying(go)}") | |