#python #if-statement #logic
#питон #если-заявление #Логические
Вопрос:
я хочу сделать код (Счастливый билет, он же лотерея) — с помощью которого можно сгенерировать случайное 6-значное число, после этого — программа проверит список (с указанием счастливых чисел для выигрыша: ’11’, ’22’, ’33’ и т. д.) и скажите — вы выиграли или нет. Но — есть одна проблема, я не могу правильно сформулировать утверждение «если», оно всегда дает мне ошибку, а не правильный результат, который я хочу. Список содержит 9 значений: luckynumber = ’11’, ’22’, ’33’, ’44’, ’55’, ’66’, ’77’, ’88’, ’99’.
Комментарии:
1. Покажите, что у вас есть до сих пор.
Ответ №1:
попробуйте это:
if luckynumber in ["put all the lucky numbers in this list"]: pass # do whatever you want
Ответ №2:
Одна из проблем , с которой вы можете столкнуться, заключается в том, что для сравнения random_number
lucky_numbers
они оба должны быть строками, т. е.,
lucky_numbers = ['11', '22', '33', '44', '55', '66', '77', '88', '99'] random_number = str(random_number) # assuming you already made random_number
Затем вы можете сравнить их с any()
, например
result = any(r in random_number for r in lucky_number)
Если вы не преобразуете random_number
в строку, вы получите сообщение об ошибке TypeError: argument of type 'int' is not interable