Я ищу, чтобы создать простую игру в крэпс, и у меня возникли проблемы.Python craps game, while-loop issue
Если этот код введен:
import random
def main():
starting_money = int(input("How much do you have to gamble? : "))
print()
player_bet = int(input("Enter your bet: "))
number_1 = (random.randint(1,6))
number_2 = (random.randint(1,6))
print("Dice roll 1: ", number_1)
print("Dice roll 2: ", number_2)
roll = number_1 + number_2
print("Your roll: ", roll)
rounds = input("Play again? (Y/N): ")
while rounds != "n" and rounds == "y":
if rounds == "n":
print("Congratulations, you left with")
if roll == 7 or roll == 11:
print("You win $", player_bet, sep="")
new_money = starting_money + player_bet
print("You have $", new_money, " remaining.", sep="")
elif roll == 2 or roll == 3 or roll == 12:
new_money = starting_money - player_bet
print("You lost $", player_bet, sep="")
print("You have $", new_money, " remaining.", sep="")
else:
print("You push.")
new_money = starting_money
print("You have $", new_money, " remaining.", sep="")
break
main()
это происходит, когда я ввод "п".
Enter your bet: 5
Dice roll 1: 6
Dice roll 2: 6
Your roll: 12
Play again? (Y/N): n
, и это происходит, когда я вводю «y».
Enter your bet: 5
Dice roll 1: 2
Dice roll 2: 3
Your roll: 5
Play again? (Y/N): y
You push.
You have $10 remaining.
В обоих случаях он должен сообщить пользователю, или не толкать их, выиграть или проиграть, прежде чем он спрашивает, если они хотят играть снова. Как я могу это сделать?
Если я поставил «раунды» внутри цикла while, он сообщает мне, что раунды ссылаются до того, как они назначены.
Я сделал все это, но по какой-то причине код все еще не зацикливается. – JCJG
@JCJG Избавиться от утверждения 'break'. –
Ах! это сработало! Спасибо миллион, я думаю, что я могу получить остальное отсюда :) – JCJG