#python #if-statement
Вопрос:
if explication == "y":
print("The game is very simple, the programe generate a random number between 0 and 100 and your"
" objective is to guess it, if you type a number lower than the generated number i'll tell you"
" and the same will happen if you type a bigger number and there's a score if you guess wrong"
" it will decrease and when the score reach 0 you loose, that's all enjoy the game!")
if explication == "n":
print("Great then we'll go straight to having fun!")
if explication != "n" and explication != "y":
explication = input("please choose y or n: ")
Итак, я начал изучать python, и я хотел сделать простую забавную программу, и здесь я хотел спросить пользователя, нужно ли ему объяснять игру, которую было просто сделать, но я также хотел, чтобы он выбрал другое время, если он пропустит щелчок или просто хотел ввести другие вещи, поэтому я сделал 3-е утверждение if, я также хотел, чтобы оно повторилось, поэтому, если он продолжит печатать что-то другое, кроме y и n, программа всегда будет отправлять «пожалуйста, выберите y или n», пока он не наберет y или n, есть ли способ сделать это?
Комментарии:
1. Рассматривали ли вы цикл while или вы просто заинтересованы в том, чтобы выполнить это без структуры цикла?
Ответ №1:
explication = None
# keep asking until we get "y" or "n"
while explication not in ["y", "n"]:
# retrieve input
explication = input("please choose y or n: ")
# check whether it's y or n
if explication == "y":
print("The game is very simple...")
elif explication == "n":
print("Great then we'll go straight to having fun!")
# if the input is neither y nor n, the program ends up here
# and loops again
Альтернатива:
# keep looping unconditionally
while True:
# retrieve input
explication = input("please choose y or n: ")
if explication == "y":
# print and break
print("The game is very simple...")
break # <- this gets us out of the while loop
elif explication == "n":
print("Great then we'll go straight to having fun!")
break
Ответ №2:
Вот простой способ написания кода
explication = None
while(explication != "n" and explication != "y"):
explication = input("please choose y or n: ")
if explication == "y":
print("The game is very simple, the programe generate a random number between 0 and 100 and your"
" objective is to guess it, if you type a number lower than the generated number i'll tell you"
" and the same will happen if you type a bigger number and there's a score if you guess wrong"
" it will decrease and when the score reach 0 you loose, that's all enjoy the game!")
break
if explication == "n":
print("Great then we'll go straight to having fun!")
break
#Code to start the game after this comment
Объяснение
Мы устанавливаем значение экспликации Нет, так как сначала необходимо инициализировать переменную экспликации. Цикл while выполняется, когда вход не является y или n. Если это y, мы объясняем игру, а затем выходим из цикла, используя break. Если это n, мы пропускаем объяснение и выходим из цикла. После того, как вы выйдете из цикла, вы сможете ввести код для игры!
Комментарии:
1. Когда вы используете операторы break, вам не нужно добавлять условие в цикл while, и наоборот. Проверьте два варианта в моем ответе.
2. @mcsoini я знаю. Я просто хотел изложить это так, чтобы новичок понял, используя код, который они предоставили. Я хотел, чтобы задающий вопрос понял код, который я написал, и я хотел использовать точный код, который они использовали, но с циклом while и вообще ничего не меняя.