Ошибка работы приложения Python
import random
stone = str("камень")
cut = str("ножницы")
paper = str("бумага")
comp = float(random.randint(1, 3))
if comp == (1):
comp = str(stone)
if comp == (2):
comp = str(cut)
if comp == (3):
comp == (paper)
user = str(input("Правила игры такие, вы вводите камень, ножницы или бумага. Правила аналогичны игре Камень ножницы бумага."))
if user == (paper) and comp == (paper):
print("Я выбираю бумагу. Ничья")
elif user == (cut) and comp == (cut):
print("Я выбираю ножницы. Ничья")
elif user == (stone) and comp == (stone):
print("Я выбираю камень. Ничья")
elif user == (stone) and comp == (cut):
print("Я выбираю ножницы. Вы выиграли")
elif user == (cut) and comp == (stone):
print("Я выбираю камень. Вы проиграли")
elif user == (paper) and comp == (cut):
print("Я выбираю ножницы. Вы проиграли")
elif user == (cut) and comp == (paper):
print("Я выбираю бумагу. Вы выиграли")
elif user == (paper) and comp == (stone):
print("Я выбираю камень. Вы выиграли")
elif user == (stone) and comp == (paper):
print("Я выбираю бумагу. Вы проиграли")
else:
print("Неверное значение")
############################################
input()
Иногда в ответ пишет "Неверное значение"
, с чем это связано не понимаю.
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Ваша ошибка иногда возникает в этой (не удачной) части кода:
import random
stone = "камень"
cut = "ножницы"
paper = "бумага"
# returns a number between 0 and 3 (both included)
comp = random.randint(0, 3)
print(f'111 comp={comp}') #
if comp == 1:
comp = stone
if comp == 2:
comp = cut
if comp == 3:
comp == paper
print(f'222 comp={comp}') #
Замените все выше написанное на одну строку и у вас все получится:
comp = random.choice(['камень', 'ножницы', 'бумага'])
Метод choice() возвращает случайно выбранный элемент из указанной последовательности.