я пытаюсь проверить, совпадает ли пользовательский ввод с регулярным выражением карты в теории [(2-9) | (10) | (AKQJ)] [HCSD] на самом деле "[(2-9) | (10) | (AKQJ)] [HCSD] "
удаление и перепечатывание всех пробелов, начинающихся со строки полного совпадения (больше ошибок нет) при каждой комбинации (и [это может быть необходимо для удаления не связанных или связанных частей разбиения регулярных выражений)оператор if из fullmatch проверил, как работает регулярное выражение, но пропустил, что это было укусом, и ему нужны кавычки
#!/usr/bin/python3
from re import fullmatch
def cardCheck(card):
x = 1
#if fullmatch([2-9|(10)|AKQJ][HCSD],card) == None:
if x == 1:
match = fullmatch((([2-9]|[(10)])|[AKQJ]),card)
#return "False"
return False
else:
return True
while True:
card = input("enter the name of the card")
if card == exit:
break()
card = card.upper()
if cardCheck(card):
print (card, "is a valid card")
я ожидал карту, "является действительной картой" для KC, 9D, 10S, ожидается 11H, 0s, 23H, чтобы не иметь выхода, фактический выход был либо
return False
^
SyntaxError: invalid syntax
, либо
match = fullmatch((([2-9]|[(10)])|[AKQJ][HCSD]),card)
TypeError: unsupported operand type(s) for |: 'list' and 'list'
depending on what version i tried