Как я могу выйти из функции, не завершив всю программу? (Python)

#python #function

Вопрос:

Я пытаюсь создать функцию повторного броска в игре, которую я создаю, но она не принимает » нет «в качестве ответа, когда спрашивает:»Вы хотите снова бросить?». Цикл продолжается, как будто я ответил «да». Я использую счетчик типов, чтобы контролировать, сколько раз вы можете повторить, поэтому я попытался установить счетчик выше допустимой суммы, но это не работает. Счетчик действительно работает, разрешая повторные розыгрыши до тех пор, пока он не превысит допустимую сумму, так что, похоже, это не проблема.

 for i in range(6):
  #rolls 6 faces of a die and sets them to a "hand"
if counter == 0:
  print("1",hand1,"n","nYou earned",resolve1,"resolve")
else:
  print("n1",hand1,"n","nYou earned",resolve1,"resolve")
counter = counter   1
if counter < 3:
  yn = input("nDo you want to roll again? (Y/n)n")
  if yn == "y" or "Y":
    hand1 = []
    resolve1 = 0
  elif yn == "n" or "N":
    counter = 4
else:
  print("nYou cannot rerolln")
  counter = 4
 

Кстати, я в значительной степени новичок, только что изучал информатику на выпускном экзамене несколько лет назад.

Комментарии:

1. return …….

2. где ваше определение функции?

3. У вас нет функции, и отступы во многих местах не нужны.

4. Это просто исключение из моей функции, и когда я попытался вернуть, проблема не исчезла.

Ответ №1:

Попробуйте вернуть значение или использовать ключевое слово break.

Комментарии:

1. break не может завершить функцию, она может завершить цикл, хотя return может

2. Что-то должно быть не так в другом месте, потому что перерыв не останавливает это…

3. ДА. но если цикл нарушен, функция завершится, так как кажется, что она состоит только из цикла. @BigChungo