Форум сайта python.su
0
Помогите, плз.
Столкнулся с подфункцией random.choice, попытался написать программу, в которой пользователь пытается угадать слово из заданного списка. Программа работает неверно: например, при введенном “эльф” выдает “не угадал. заданное слово - эльф” и так далее. Что не так? Туплю и не понимаю, где косяк. Заранее спасибо.
a = хх'эльф', ‘орк’, ‘хуман’, ‘гном’хх
b = str(input())
import random
print ('введите слово')
if b == random.choice(a):
print('угадал. задуманное слово -', random.choice(a))
else:
print('не угадал. задуманное слово -', random.choice(a))
В первой строчке ‘xx’ - это квадратные скобки. Сайт их почему-то не пропускает.
Отредактировано mummer (Апрель 6, 2019 15:51:47)
Офлайн
73
косяк в том что вы не понимаете что при каждом вызове random.choice(a) функция возвращает разные значения
>>> import random >>> a = ['эльф', 'орк', 'хуман', 'гном'] >>> print(random.choice(a)) # это значение будет в if b == random.choice(a): орк >>> print('угадал. задуманное слово -', random.choice(a)) угадал. задуманное слово - эльф >>> print('не угадал. задуманное слово -', random.choice(a)) не угадал. задуманное слово - орк >>>
import random a = ['эльф', 'орк', 'хуман', 'гном'] b = input('введите слово: ') word = random.choice(a) if b == word: print('угадал. задуманное слово -', word) else: print('не угадал. задуманное слово -', word)
Офлайн
0
marvellikБлагодарю)))
косяк в том что вы не понимаете что при каждом вызове random.choice(a) функция возвращает разные значения
Офлайн