Member 13673324 Ответов: 1

Как мне получить первый выбор для активации?




import sys
from random import randint


print("Choose: Y/N")
def main():
    user_input = str(input("y/n"))
    Choice = user_input
    if Choice == "y":
        loop()
    if Choice == "n":
        print("goodbye")
        quit()

counter = 0
trials = 0

def loop():
    global counter
    global trials
    nPeople = int(input("Enter the Number of People in the Room: "))
    myBday = randint(1,365)
    userInput = "y"
    while userInput.lower() == "y":
        for i in range (1, nPeople+1):
            if myBday == randint(1,365):
                counter += 1
                break
    trials += 1
    print(counter/trials)
    main()
    loop()
    
if __name__ == "__main__":
    loop()

Я не могу получить первый "основной" выбор, чтобы вызвать ответ.

Что я уже пробовал:

Я попытался ввести больше переменных. и меняет все вокруг.

1 Ответов

Рейтинг:
1

Richard MacCutchan

Ваш тест в конце концов ошибочен, __name__ равно только тому, что "__main__" при работе в интерактивном режиме или из командной строки. Так и должно быть:

if __name__ != "__main__":

Также печатная строка
print("Choose: Y/N")

должно быть внутри вашей основной функции, непосредственно перед запросом ввода, чтобы пользователь знал, что он ждет ввода.