Проблема в коде игры камень ножницы бумага
Не работает игра камень/ножницы/бумага. Я написал самым простым алгоритмом, с if
import random
input('Viberete"noznici,kolodec or bymaga": ')
random_number = random.randint(1, 3)
if input == "noznici" and random_number == 1:
print("Nichya, ya toze vibral noznici")
elif input == "noznici" and random_number == 2:
print("Ti proigral, ya vibral kolodec")
elif input == "noznici" and random_number == 3:
print("Ti vigral, ya vibral bymagy")
if input == "kolodec" and random_number == 1:
print("Ti vigral, ya vibral noznici")
elif input == "kolodec" and random_number == 2:
print("Nichya, ya toze vibral kolodec")
elif input == "kolodec" and random_number == 3:
print("Ti proigral, ya vibral bymagy")
if input == "bymaga" and random_number == 1:
print("Ti proigral, ya vibral noznici")
elif input == "bymaga" and random_number == 2:
print("Ti vigral, ya vibral kolodec")
elif input == "bymaga" or random_number == 3:
print("Nichya, ya toze vibral bymagy")
Ответы (2 шт):
Автор решения: tohatsu
→ Ссылка
input - функция. когда вы сравниваете функцию со строкой, поянтно, что у вас ничего не получится.
Эта функция возвращает ответ пользователя. Вы же его никуда не сохраняете, а надо сохранить в переменную, это я и сделал в строке answer = input("")
Удачи в изучении python!
import random
answer = input('Viberete"noznici,kolodec or bymaga": ')
random_number = random.randint(1, 3)
if answer == "noznici" and random_number == 1:
print("Nichya, ya toze vibral noznici")
elif answer == "noznici" and random_number == 2:
print("Ti proigral, ya vibral kolodec")
elif answer == "noznici" and random_number == 3:
print("Ti vigral, ya vibral bymagy")
if answer == "kolodec" and random_number == 1:
print("Ti vigral, ya vibral noznici")
elif answer == "kolodec" and random_number == 2:
print("Nichya, ya toze vibral kolodec")
elif answer == "kolodec" and random_number == 3:
print("Ti proigral, ya vibral bymagy")
if answer == "bymaga" and random_number == 1:
print("Ti proigral, ya vibral noznici")
elif answer == "bymaga" and random_number == 2:
print("Ti vigral, ya vibral kolodec")
elif answer == "bymaga" or random_number == 3:
print("Nichya, ya toze vibral bymagy")
Автор решения: Vlad100
→ Ссылка
Нужно поменять код таким образом.
import random
choose = input('Viberete noznici,kolodec or bymaga": ')
random_number = random.randint(1, 3)
if choose == "noznici" and random_number == 1:
print("Nichya, ya toze vibral noznici")
elif choose == "noznici" and random_number == 2:
print("Ti proigral, ya vibral kolodec")
elif choose == "noznici" and random_number == 3:
print("Ti vigral, ya vibral bymagy")
if choose == "kolodec" and random_number == 1:
print("Ti vigral, ya vibral noznici")
elif choose == "kolodec" and random_number == 2:
print("Nichya, ya toze vibral kolodec")
elif choose == "kolodec" and random_number == 3:
print("Ti proigral, ya vibral bymagy")
if choose == "bymaga" and random_number == 1:
print("Ti proigral, ya vibral noznici")
elif choose == "bymaga" and random_number == 2:
print("Ti vigral, ya vibral kolodec")
elif choose == "bymaga" or random_number == 3:
print("Nichya, ya toze vibral bymagy")
Я заношу результат функции input() в переменную choose. А потом проверяю в if равняется ли choose bymaga/kolodec/noznici.