我需要确保用户放入函数的字符串只包含字母“A”、“T”、“G”和“C”。如果它包含任何其他字符,我需要能够返回错误消息。例如:如果用户输入“ATTGACT”字符串将通过我的函数前进,但如果用户输入“ATTQWSCT”字符串将触发错误消息。这是一个涉及 DNA 的函数,因此字符串只能包含这些字母。
问问题
3869 次
2 回答
5
真的很容易使用re
:
import re
pattern = "[^ACTG]+"
string = raw_input()
if re.findall(pattern, string):
#error
else:
#your code here
...或默认 Python 集:
string = raw_input()
if set(string) <= {"A", "C", "T", "G"}:
#error
else:
#your code here
...或迭代:
string = raw_input()
for i in string:
if not (i in "ACTG"):
#error
# Or, as @l4mpi said:
all(c in "ACTG" for c in string)
于 2013-10-17T13:15:56.687 回答
0
sequence="AATQWIC"
correct = "ATGC"
for each_char in sequence:
if not each_char in correct:
print "Error"
于 2013-10-17T13:15:21.243 回答