在Python中,如何检查用户是否输入了名称而不是数字?

时间:2015-12-28 02:26:13

标签: python-2.7

在Python中,当要求用户输入为字符串时,如何检查用户是否输入了名称而不是数字?我希望以其名称的形式输入字符串,但我想使用错误检查来确保用户不输入数字。

3 个答案:

答案 0 :(得分:4)

根据作为姓名而不是数字的确切要求,您可以在用户提供的字符串上调用.isalpha()

请参阅the docs了解各种方法以检查字符串是否满足某些条件。

答案 1 :(得分:2)

您可以定义一个函数,用于确定输入字符串中是否存在任何非字母字符:

def is_valid_name(s):
    return all(char.isalpha() for char in s)

如果字符串中只包含 字母字符,则会返回True,否则为False

>>> print(is_valid_name("Hello123"))
False
>>> print(is_valid_name("Hello"))
True

请注意,这不适用于空格:

>>> print(is_valid_name("Hello World"))
False

因此可以根据需要进行调整:

def is_valid_name(s):
    return all(char.isalpha() or char.isspace() for char in s)

见这里:

>>> print(is_valid_name("Hello World"))
True

答案 2 :(得分:0)

如果你想在英语词典中检查正确,那么你可以使用pyenchant ...使用pip来安装它...它的东部使用并且如果单词的拼写是正确的则给出true而如果单词不存在则为false英语词典。

pip install pyenchant