如何在python中验证用户输入

如何在python中验证用户输入,python,string,validation,user-input,Python,String,Validation,User Input,我是python的新手,我正试图弄清楚如何验证用户输入。我想让用户提交一个DNA序列,并验证它是否是一个DNA序列。可接受的输入可以有大写或小写的ATCG和空格,我不确定具体怎么做 到目前为止,我可以要求输入,但不能验证它 import sys Var1 = raw_input("Enter Sequence 1:") 然后我想做一些类似的事情: if Var1 != ATCG (somehow put 'characters that match ATCG or space) pri

我是python的新手,我正试图弄清楚如何验证用户输入。我想让用户提交一个DNA序列,并验证它是否是一个DNA序列。可接受的输入可以有大写或小写的ATCG和空格,我不确定具体怎么做

到目前为止,我可以要求输入,但不能验证它

import sys
Var1 = raw_input("Enter Sequence 1:")
然后我想做一些类似的事情:

if Var1 != ATCG (somehow put 'characters that match ATCG or space)
    print "Please input valid DNA sequence"
    sys.exit() (to have it close the program)
有什么帮助吗?我觉得这应该很简单,但我不知道如何指定它可以是任何ATCG、ATCG或空间。

您可以使用,并且:

在上述代码中,如果
Var1
中的任何字符不是下列字符之一,则将运行最后两行:

"A", "T", "C", "G", " ", "a", "t", "c", "g"
此外(类似于):


真是太棒了!非常感谢!作为一种最佳实践,应该有一个非零的退出代码参数,因为程序没有成功。@jpmc26-很好。我更新了我的帖子。
"A", "T", "C", "G", " ", "a", "t", "c", "g"
>>> import re
>>> def special_match(strg, search=re.compile(r'[^atcgATCG\s]').search):
...   return bool(search(strg))
>>> if (special_match("atcF")):
...   print "Invalid input"
...
>>> Invalid input