Не проверяется условие

Farrar

Новичок
Пользователь
Фев 8, 2022
1
0
1
Python:
import time
import random

coin = ['Орел','Решка']

random.shuffle(coin)

rdm = coin.pop()

money = 100

x = input('Привет, поиграем в монетку? y/n\n')

while True:
    if x == 'y':
        if money > 0:
            print ("Отлично, сейчас у тебя %d$, но ты можешь\nВыиграть их или Проиграть"%money)
            time.sleep(1)
            choose = input ("Выбери сторону, Орел или Решка:\n")
            time.sleep(1)
            if money == 0:
                print("Увы. У вас закончились все деньги, до встречи!")
                quit()
            if choose == 'Орел' or 'Решка':
                print (f'{choose} - отличный выбор')
                time.sleep(1)
                dep = int(input('Сколько денег ставите?\n'))
                if dep > money:
                    print("У вас нету столько денег")
                    quit()
                  
                else:
                    print(f'Ставка в размере %d$ поставлена на {choose}'%dep)
                    time.sleep(1)
                    money -= dep
                    print('На балансе осталось %d$'%money)
                    time.sleep(1)
                    print('Бросаю монетку...')
                    time.sleep(2)
                    print(f'Выпала {rdm}')
                    if rdm == choose:
                        money += dep *2
                        print('Поздравляю!\nВаш выигрыш составляет %d$'%dep)
                        time.sleep(1)
                        print('На балансе: %d$'%money)
                        contin = input('Хотите продолжить?y/n\n')
                        if contin == "y":
                            print('Okay')
                        else:
                            print("Как скажете.\nВы закончили игру с балансом в %d$"%money)
                            quit()
                    else:
                        print("Извините, повезет в следующий раз")
                        time.sleep(1)
                        print('На балансе: %d$'%money)
                        time.sleep(1)
                        repeat = input('Хотите повторить?y/n\n')
                        if repeat == 'n':
                            print ("Как скажете\nВы закончили игру с балансом %d$"%money)
                            quit()
                        else:
                            print('Okay')
            else:
                print('Выбрана неккоректная сторона')
                quit()
        else:
            print('Увы, деньги кончились')
            quit()
    else:
        print('До встречи!')
        quit()
В коде не проверяется условие, где choose должен быть Орел или Решка. Даже при любом значении ошибки не будет, шо делать
 
Последнее редактирование модератором:

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
Итак, немного про приоритетность операторов. Операторы выполняются в следующем порядке
1) ==, !=
2) not, and, or

таким образом выражение
Python:
choose == 'Орел' or 'Решка'

работает так
1) choose == 'Орел'
Принимает значение True или False
пусть это значение будет rez

2) rez or 'Решка'
Всегда True, Т.к. любая не пустая строка - True

Поэтому надо заменить это выражение на такое:
Python:
choose == 'Орел' or choose == 'Решка'
 

Форум IT Специалистов