Проверьте, есть ли пунктуация или число в середине слова - PullRequest
0 голосов
/ 10 февраля 2020

Например, я пытаюсь использовать булеву функцию, если в слове есть не только буквы, но и цифры, или знаки препинания, или и то и другое. Если в конце есть только пунктуация, а номер отсутствует, она должна вернуть False.

  1. g3n3rator -> return True
  2. 0ffer -> return True
  3. Работа! Ng -> return True
  4. morning - > вернуть Ложь
  5. привет? -> вернуть False
  6. hell0? -> вернуть True

1 Ответ

1 голос
/ 10 февраля 2020

Для вашего решения вы всегда можете использовать regex. В случае не-регулярного выражения, попробуйте

def check(inp):
    if inp.isalpha():
        return False
    if not any(char.isdigit() for char in inp) and inp[-1] in string.punctuation:
        return False
    return True

. Это выводит корректные значения во все тестовые случаи, приведенные в заявлении о проблеме. Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...