一般Python编程2.7数据验证

时间:2013-03-05 17:17:47

标签: python validation

我想知道我应该为这个def函数使用哪些函数,以便用户只能输入字符串而不是整数 -

def GetTextFromUser():

    TextFromUser = raw_input('Please enter the text to use: ')

    return TextFromUser

2 个答案:

答案 0 :(得分:6)

raw_input()总是返回一个字符串。但是,如果通过字符串表示只允许使用字母,那么您可以使用:str.isalpha()

S.isalpha() -> bool

Return True if all characters in S are alphabetic
and there is at least one character in S, False otherwise.

的示例:

In [9]: 'foo'.isalpha()
Out[9]: True

In [10]: 'foo23'.isalpha()
Out[10]: False

答案 1 :(得分:0)

根据documentation,raw_input始终返回一个字符串。如果你永远不希望它返回一个整数,我会尝试使用int()将其转换为整数,如果失败则捕获异常。如果没有失败,请立即返回值。这遵循Pythonic的风格:“请求宽恕比获得许可更好。”